Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  PTC Creo Elements/Programmierung
  [LISP] 3D-Punktkoordinaten von Durchstroßpunkten auf AE

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Creo
Autor Thema:  [LISP] 3D-Punktkoordinaten von Durchstroßpunkten auf AE (628 mal gelesen)
Patrick Weber
Mitglied
Konstruktionstechniker, Admin


Sehen Sie sich das Profil von Patrick Weber an!   Senden Sie eine Private Message an Patrick Weber  Schreiben Sie einen Gästebucheintrag für Patrick Weber

Beiträge: 657
Registriert: 20.11.2006

Win7 Pro SP1 64Bit
HP Z230, Core i5, 8GB RAM, nv Quadro K600
Creo Elements/Direct 19.0 M010
ModelManager 19.0 M010
clisp,VB.net,VBA,AHK,php,javascript

erstellt am: 25. Jan. 2008 15:42    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Bild3.jpg

 
Ich beschäftige mich seit gestern intensiver mit LISP und bin etwas frustriert. (der berüchtigte Tischkantenbiss steht bevor    )

Mein Problem:

Ich habe zwei Splines, die um ein Modell herum gebastelt wurden. (siehe Bild)
Ich erstelle eine Arbeitsebene und lasse mir die Durchstoßpunkte auf der AE erstellen, also 4 an der Zahl.

Code:

  (sd-call-cmds
    (int_c_point INNER_SPL)
  ) ;end sd-call-cmds
  (sd-call-cmds
    (int_c_point OUTER_SPL)
  ) ;end sd-call-cmds


Ich selektiere die Punkte mit:
Code:

(setf AE_P_LIST
(sd-call-cmds
  (get_selection :focus_type *sd-c-vertex-2d-seltype*
  :curr_wp_only
  :select :all_2d
  )
) ;end sd-call-cmds
)

Display der Selektion zeigt mir das an:

Code:

(#S(SEL_ITEM PATH
      (#S(NPARCEL SIMPLE-ENTITY-PTR 178037904)
        #S(NPARCEL SIMPLE-ENTITY-PTR 337156832))
      TYPE 178140944 ITEM #S(EDGE SIMPLE-ENTITY-PTR 265952880))
#S(SEL_ITEM PATH
      (#S(NPARCEL SIMPLE-ENTITY-PTR 178037904)
        #S(NPARCEL SIMPLE-ENTITY-PTR 337156832))
      TYPE 178140944 ITEM #S(EDGE SIMPLE-ENTITY-PTR 265958528))
usw.
}

Und nun weiß ich nicht mehr weiter.   
Irgendwie muss ich nun mit sd-inq-edge-geo etwas abfragen können, aber wie? Aus dem unübersichtlichen IKit werde ich nicht schlau.   
Mein Ziel wäre es, die gpnt3d zu ermitteln, welche einen positiven x-Wert auf der AE besitzen.

Wäre für jede Hilfe dankbar.   

Könnte ein Mod den Typo aus dem Thema machen?   

------------------
Grüße
pw

[Diese Nachricht wurde von Patrick Weber am 25. Jan. 2008 editiert.]

[Diese Nachricht wurde von Patrick Weber am 31. Jan. 2008 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2914
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 25. Jan. 2008 15:52    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Patrick Weber 10 Unities + Antwort hilfreich

Du hast da eine Liste von Punkten (vertices) zusammenselektiert. sd-inq-edge-geo operiert aber auf Kanten, wie der Name auch schon sagt. sd-inq-vertex-geo passt besser, schaetze ich.

Claus

------------------
CoCreate OneSpace Modeling FAQ: http://www.clausbrod.de/OneSpaceModeling/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

der_Wolfgang
Ehrenmitglied V.I.P. h.c.
Tastenhauer


Sehen Sie sich das Profil von der_Wolfgang an!   Senden Sie eine Private Message an der_Wolfgang  Schreiben Sie einen Gästebucheintrag für der_Wolfgang

Beiträge: 2017
Registriert: 3.20.

● PE60+80@home
● W10 Pro Build19044.2364
● Drafting V17~V20.5.1
● Modeling V17~V20.5.1

erstellt am: 27. Jan. 2008 17:30    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Patrick Weber 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Patrick Weber:
Ich beschäftige mich seit gestern intensiver mit LISP und bin etwas gefrusted.

na horche mal!  Sich seit 24. 'intensiver mit LISP' befassen ein get_selection (und anderes) hinbekommen, das ist doch schon mal sehr gut! <glückwunschsmilie>
Code:

(#S(SEL_ITEM PATH
       (#S(NPARCEL SIMPLE-ENTITY-PTR 178037904)
        #S(NPARCEL SIMPLE-ENTITY-PTR 337156832))
       TYPE 178140944 ITEM #S(EDGE SIMPLE-ENTITY-PTR 265952880))
#S(SEL_ITEM PATH
       (#S(NPARCEL SIMPLE-ENTITY-PTR 178037904)
        #S(NPARCEL SIMPLE-ENTITY-PTR 337156832))
       TYPE 178140944 ITEM #S(EDGE SIMPLE-ENTITY-PTR 265958528))

na da reiten wir mal in einer schleife auf den sel-items rum, gucken was hier und da so raus kommt. Und Du musste dann wissen, was Du verwenden willst.
Code:

(dolist (a-e edges)
  (setq edge-geo (sd-inq-edge-geo a-e :dest-space :global))

  (cond
    ((sd-bspline-edge-p edge-geo)
    (progn
      (format T "~%bspline-edge~%~{  ~S ~S~%~}" (list :Order (sd-bspline-edge-order edge-geo)
                                                  :start-pnt (sd-bspline-edge-start-pnt edge-geo)
                                                  :end-pnt (sd-bspline-edge-end-pnt edge-geo)
                                                  :len-ctrl-pnts (length (sd-bspline-edge-ctrl-pnts edge-geo))
                                                  ))
      ))
    ((sd-edge-p  edge-geo)
    (format T "~%edge~%~{  ~S ~S~%~}" (list
                                            :start-pnt (sd-edge-start-pnt edge-geo)
                                            :end-pnt (sd-edge-end-pnt edge-geo)
                                            ))
      )
    (T
    (pprint "unsupported type!") ; (pprint edge-geo)
    )
    ) ;; end cond
)  ;; end dolist



ungetestet, nur zusammen kopiert (habs' nicht so mit geo und kurven (bei CAD)).  Irritieren tut mich auch, das der selektions focus VERTEX (hier 2D Construction Point) ist, aber edges zurueckkommen. Deswegen habe ich
Code:

(pprint (sd-inq-vertex-geo a-e :dest-space <theworkplane>;)


weggelassen

Die Dokumentation zu '2D Match Vertex' hinterlaesst bei mir eine Luecke.

Ich werde allerdings auch aus Deiner Fragestellung nicht ganz schlau. "Wäre für jede Hilfe dankbar". Da muesste du mal ein Beispielmodell und den Lisp Code zur Verfügung stellen. Das erst nachzu'stellen', um Dir weiterhelfen zu koennen, ist zuviel Aufwand. Im Screenshot ist gar keine AE.

------------------
Seamonkey Firefox Thunderbird  Seamonkey auf deutsch

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Patrick Weber
Mitglied
Konstruktionstechniker, Admin


Sehen Sie sich das Profil von Patrick Weber an!   Senden Sie eine Private Message an Patrick Weber  Schreiben Sie einen Gästebucheintrag für Patrick Weber

Beiträge: 657
Registriert: 20.11.2006

Win7 Pro SP1 64Bit
HP Z230, Core i5, 8GB RAM, nv Quadro K600
Creo Elements/Direct 19.0 M010
ModelManager 19.0 M010
clisp,VB.net,VBA,AHK,php,javascript

erstellt am: 28. Jan. 2008 11:05    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

@clausb:

sd-inq-edge-geo passt schon und liefert mir auswertbare Daten - wenn auch etwas unlogisch.


@Wolfgang:

Danke!  Das Beispiel hat mir geholfen.
Meiner Meinung nach wäre ein Beispiel zur Auswertung mehrerer selektierter Elemente nach get_selection oder ein Verweis auf dolist im IKIT ganz praktisch.

------------------
Grüße
pw

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

der_Wolfgang
Ehrenmitglied V.I.P. h.c.
Tastenhauer


Sehen Sie sich das Profil von der_Wolfgang an!   Senden Sie eine Private Message an der_Wolfgang  Schreiben Sie einen Gästebucheintrag für der_Wolfgang

Beiträge: 2017
Registriert: 3.20.

● PE60+80@home
● W10 Pro Build19044.2364
● Drafting V17~V20.5.1
● Modeling V17~V20.5.1

erstellt am: 28. Jan. 2008 19:32    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Patrick Weber 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Patrick Weber:
@Wolfgang:

Danke!   Das Beispiel hat mir geholfen.
Meiner Meinung nach wäre ein Beispiel zur Auswertung mehrerer selektierter Elemente nach get_selection oder ein Verweis auf dolist im IKIT ganz praktisch.


fein.. das es geholfen hat. Hatte ich mir fast gedacht.

nnnnnnnaaajjaaa...

Das IKIT ist/dokumentiert halt SolidDesigner spezifisches LISP.  Den normal LISP kram (dolist, setq, let, getf... und 5423 andere) musst Du im Common Lisp nachschlagen.
siehe http://osd.cad.de/linkliste.htm  oder http://www.clausbrod.de/cgi-bin/view.pl/OneSpaceModeling/OsdmFaqLisp  und so..

In der (Grund)Schule hast Du doch Deutsch gelernt zu schreiben und zu lesen, oder? Warum kannst Du dann nicht jeden Gesetzestext verstehen?        damit will ich jetzt nicht sagen das SD-IKIT das Gesetzt sei 

Umgekehrt wird Dir ein Rechtsanwalt (eine Rechtsanwältin) nicht primär deutsch beibringen, sondern höchsten die spezifisch deutschen Gesetze.. (oder so).

------------------
Seamonkey Firefox Thunderbird  Seamonkey auf deutsch

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

clausb
Ehrenmitglied V.I.P. h.c.



Sehen Sie sich das Profil von clausb an!   Senden Sie eine Private Message an clausb  Schreiben Sie einen Gästebucheintrag für clausb

Beiträge: 2914
Registriert: 20.12.2000

Ich schreibe das hier in meiner Freizeit und spreche weder für meinen Arbeitgeber noch für andere Firmen. Mehr Unsinn von mir unter clausbrod.de.

erstellt am: 30. Jan. 2008 11:24    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Patrick Weber 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von der_Wolfgang:
In der (Grund)Schule hast Du doch Deutsch gelernt zu schreiben und zu lesen, oder? Warum kannst Du dann nicht jeden Gesetzestext verstehen? 

Soweit musst Du gar nicht nach einer Analogie suchen. Haetten wir statt einer Lisp-Schnittstelle eine in C++ (beliebiges Beispiel, die Sprachwahl ist hier gleichgueltig), dann wuerde auch niemand erwarten, dass in unserer Dokumentation dazu erklaert wird, wie man in C++ eine Variable deklariert oder eine Schleife schreibt.

Im uebrigen vollste Zustimmung natuerlich.

Claus

------------------
CoCreate OneSpace Modeling FAQ: http://www.clausbrod.de/OneSpaceModeling/

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz