|
CoCreate Programmierung : Bg/Teil durch SysId identifizieren und Name anzeigen
Walter Geppert am 23.09.2011 um 09:04 Uhr (0)
1. Zu Spät 2. Im IKit v15 nachgesehen ------------------meine LISP-Makros sind auf osd.cad.deDisclaimerGrüße aus Wien WalterDC4 Technisches Büro GmbH
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Bg/Teil durch SysId identifizieren und Name anzeigen
Benutzer1 am 22.09.2011 um 09:36 Uhr (0)
Hallo,ich (Lisp-Neuling) versuche mit folgendem Code eine Bg/Teil anhand der SysId zu identifizieren und dann den Name anzuzeigen:Code:(in-package :custom)(use-package :OLI)(sd-defdialog Name_zu_SysId_anzeigen :Dialog-title "Name_zu_SysId_anzeigen" :variables ((SysId :value-type :string :modifies :nil :title "SysId" :initial-value "906564-1316415319-1f2901d9d4-0 3767040" rompt-text "Sys-Id eingeben" )) k-action (display (format nil "Name = ~A" (sd-sysid-to-obj SysId))) ; Name anzeigen)Es wi ...
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Bg/Teil durch SysId identifizieren und Name anzeigen
Walter Geppert am 22.09.2011 um 10:47 Uhr (0)
Zitat:Original erstellt von Benutzer1:...ich (Lisp-Neuling) .... Na da gibts dann ja einiges zu erklären.Wenn von OBJECTs die Rede ist, ist immer die Struktur SEL_ITEM gemeint. Das ist sozusagen der eindeutige Anker, an dem sich die unterschiedlichsten Funktionen festmachen können, bzw. mit dem ein Objekt zur weiteren Verarbeitung übergeben werden kann. Das ist dann auch das, was du da als "gallischer Fluch" herausbekommen hast.Im Unterschied zur SYS_ID sind SEL_ITEMs sozusagen "flüchtig" und existieren ...
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Bg/Teil durch SysId identifizieren und Name anzeigen
Benutzer1 am 22.09.2011 um 11:12 Uhr (0)
Danke für die schnelle Antwort.Den Abschnitt im IKit muss ich mir noch anschauen, die Empfehlung hab ich aber gleich mal ausprobiert. Der Code liefert mir jetzt eine Fehlermeldung.LISP-Fehler:(#S(SEL_ITEM PATH (#S(NPARCEL SIMPLE-ENTITY-PTR 123104432) #S(NPARCEL SIMPLE-ENTITY-PTR 2618072848) #S(NPARCEL SIMPLE-ENTITY-PTR 1455213920)) TYPE ...)) is not a structure
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Bg/Teil durch SysId identifizieren und Name anzeigen
Walter Geppert am 23.09.2011 um 08:57 Uhr (0)
Tja, wenn ich eine Antwort wüsste, hätte ich mich schon früher gemeldet. Laut IKit bringt (sd-sysid-to-obj) nur ein SEL_ITEM, wenn das Objekt auch im Arbeitsraum gefunden wurde, ansonsten NIL.Kann nur vermuten, dass es sich bei der eingegebenen SysId um ein nicht aktuell geladenes Teil handelt und trotzdem ein (ungültiges) SEL_ITEM zurückgeliefert wird ------------------meine LISP-Makros sind auf osd.cad.deDisclaimerGrüße aus Wien WalterDC4 Technisches Büro GmbH
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Bg/Teil durch SysId identifizieren und Name anzeigen
Walter Geppert am 23.09.2011 um 09:04 Uhr (0)
1. Zu Spät 2. Im IKit v15 nachgesehen ------------------meine LISP-Makros sind auf osd.cad.deDisclaimerGrüße aus Wien WalterDC4 Technisches Büro GmbH
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Bg/Teil durch SysId identifizieren und Name anzeigen
Patrick Weber am 23.09.2011 um 10:55 Uhr (0)
Zitat:Original erstellt von Benutzer1:LISP-Fehler:(#S(SEL_ITEM PATH (#S(NPARCEL SIMPLE-ENTITY-PTR 123104432) #S(NPARCEL SIMPLE-ENTITY-PTR 2618072848) #S(NPARCEL SIMPLE-ENTITY-PTR 1455213920)) TYPE ...)) is not a structure[/i]Dass es eine Liste ist, kann man schon durch Betrachten des Rückgabewertes erahnen "(#S(....))".EDIT: @Benutzer1: Bitte Sys-Info im Profil ausfüllen, sonst wissen wir nicht genau, mit welchen Programmversionen du unterwegs bist!------------------Grüße aus SachsenpwKarl Marx ist tot, ...
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Annotation-Abfrage
chris-as am 28.09.2011 um 10:05 Uhr (0)
Hallo LISP-Experten,ich möchte im Annotation in einer Ansicht eine Geometrielinie antippen und abfragen zu welchem 3D-Modell sie gehört (ähnlich der Stücklisten-Positionsnummernvergabe).Es gibt einen Selekt-Fokus *sd-anno-part-seltype* der aber laut Hilfe "a plain Annotator part (not recommended !)" , das Teil "liefert", aber nicht empfohlen wird (was immer das auch bedeutet).Ich habe aber noch keinen Weg gefunden, die Struktur, die diese Auswahl "liefert" auszuwerten.Kann mir jemand einen Tipp geben?Danke ...
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Annotation-Abfrage
Walter Geppert am 28.09.2011 um 10:56 Uhr (0)
Quick and Dirty aus meinen vielen Firmenmakros rauskopiert ohne Test, aber so sollte die lokale Variable owner3d als SEL_ITEM weiterverwendbar sein------------------meine LISP-Makros sind auf osd.cad.deDisclaimerGrüße aus Wien WalterDC4 Technisches Büro GmbH
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Annotation-Abfrage
Walter Geppert am 28.09.2011 um 12:40 Uhr (0)
Da ist noch was faul gewesen mit der Definition des ME10-Makro. So "inline" gehts scheints doch nicht. Wenn man es stattdessen aus einem extra File mit INPUT aufruft, funzt es aber ------------------meine LISP-Makros sind auf osd.cad.deDisclaimerGrüße aus Wien WalterDC4 Technisches Büro GmbH
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Annotation-Abfrage
Walter Geppert am 28.09.2011 um 15:50 Uhr (0)
Zitat:Original erstellt von chris-as:Ich hoffe, ich lade sie an der richtigen Stelle nach.DankeBesser ist es, das ME10-Makro nur einmal zu laden, also aus dem Dialog rausnehmen und stattdessen am Ende des LISP-Files so was anzuhängen:Code:;;--------------------------------------------------------------*;; ME10-Makro-Dateien;;--------------------------------------------------------------*(sd-execute-annotator-command :cmd "INPUT D:/tmp/test.mak")Dann ist auch ein Neustart nötig, weil sich nach meiner Erfah ...
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Aus CoCreate (V17) C#.NET (WindowsForms) Anwendung (mit Rückgabewert) zugreifen
clausb am 19.07.2011 um 22:22 Uhr (0)
Vorab: Bin mir bei der Lizenz nicht ganz sicher, was aktuelle Versionen angeht, aber ich denke, Du brauchst keine spezielle.Das .NET-API in CoCreate Modeling unterstützt sowohl externe als auch interne Clients ("add-ins"). Welchen Clienttyp man wählt, das hängt von der konkreten Anwendung ab. Fragen, die man sich stellen muss (nur zur Anregung): Wie ist der Lebenszyklus der Anwendung? Braucht sie zur Erfüllung ihrer Aufgabe immer eine laufende Instanz von CoCreate Modeling? Soll die Anwendung auch auf Rech ...
|
In das Form CoCreate Programmierung wechseln |
|
CoCreate Programmierung : Aus CoCreate (V17) C#.NET (WindowsForms) Anwendung (mit Rückgabewert) zugreifen
Humml am 22.07.2011 um 12:23 Uhr (0)
Vielen Dank für die Antwort.Leider bin ich die Tage zu sehr eingespannt als dass ich mich mit dem programmieren Spielen kann. Ich werde deine Infos sobald ich wieder Atmen kann analysieren und versuchen etwas hin zu bekommen.Super wäre es wenn du mir ein Beispiel für das Aufrufen (via LISP) einer Funktion die sich in einer C# kompilierten .dll befindet. Bzw. ein wie ich von C# eine Funktion in CoCreate aufrufen kann.Sobald ich dann ansatzweise dazu komme werde ich meine Ergebnis natürlich mit euch teilen.F ...
|
In das Form CoCreate Programmierung wechseln |