• Dieses Forum ist die maschinengenerierte Übersetzung von www.cad3d.it/forum1 - der italienischen Design-Community. Einige Begriffe sind nicht korrekt übersetzt.

Punkte und Texte auf der Oberseite einer Polylinea einfügen

  • Ersteller Ersteller zizou94
  • Erstellt am Erstellt am

zizou94

Guest
hi ich wollte wissen, ob es in einer polylinie möglich ist, für jeden scheitel den punktbefehl einzufügen, der auf dem cad steht, dann logischerweise eine mit dem pdmode und pdsize befehl justiert, welche art von punkt es will und die größe und dann, wenn an diesen punkten ist es möglich, eine zählung zuzuordnen, um zu wachsen, als wie die polylinie bearbeitet wurde, ich fand eine lisp hier auf dem forum, aber einsätze der kreise ist nicht.
 
ich habe den kreis gewechselt. in diesem beitrag um punkte anstelle von kreisen zu zeichnen.

werfen sie es mit plp, für die texte jetzt habe ich keine zeit, wenn sie nicht posten etwas ich werde sehen, was ich tun kann.

Code:
(defun c:circlevtx (/ent und idx pts totparam rot)
(defun c:plp (/ent und idx pt ss totparam rot)


(Satz '(0). "*poly*"))
(Progn)
(vla-get-activedocument)
(setq idx -1)
(while (setq idx (1+ idx))))
(setq ent (Name ss idx))
(setq totparam (fix (vlax-curve-getendparam ent))
-1
r (getvar "circlerad")
(if (= r 0,0)
(setq r 1.5); standardradius einstellen hier
)
(setq und (1+) totparam
(setq pt (vlax-curve-getpointatparam ent i))


;| (entmake (list '(0 . "circle")
(cons 10 pt)
(cons 40 r)
;(cons 8 "circlelayer"); hier die schichteinstellung
)
)
|;

(entmake (list '(0 . "point")
(cons 10 pt)
)
)
)

(setq pt (vlax-curve-getpointatparam ent (vlax-curve-getendparam ent))

;| (entmake (list '(0 . "circle")
(cons 10 pt)
(cons 40 r)
;(cons 8 "circlelayer"); hier die schichteinstellung
)
)
|;

(entmake (list '(0 . "point")
(cons 10 pt)
)
)
)



(vla-get-activedocument)
)
)
(princ)
)
 
versuchen sie es funktioniert nicht, es ist etwas falsch mit mir, wenn ich die polylinea sagt: ; fehler: keine funktionsdefinition: vlax-get-acad-object
 
versuchte nun auf einem anderen pc und funcy sowohl mit polyline, lwpolyline und 3dpoly.

wir warten auf den beweis eines anderen.
 
hallo, ich versuche diese lispe, aber es gibt mir den gleichen fehler vor, acad2008 version.
hi.
 
hallo, ich versuche diese lispe, aber es gibt mir den gleichen fehler vor, acad2008 version.
hi.
es ist nicht meins, er fand es plannerroad, ich habe gerade einen kleinen wechsel gemacht, um punkte anstelle von kreisen zu zeichnen. :smile:

geben sie (vl-load-com) in der nächsten reihe der toten. :rolleyes::tongue:
 
hi.
ich habe diese lippe versucht und es geht gut (adt 2011) aber ich habe die folgende notwendigkeit und ich konnte es nicht durch änderung beheben.

ich muss "bestellte preise" (x und y) an der spitze der polylinie platzieren. der ursprung kann auch manuell platziert werden.

ich versuchte, "punkt" durch "dimension" und (cons 10 pt) durch (cons 13 pt) und (cons 14 pt) zu ersetzen, die die bestellte quote zuordnen sollten. ich glaube, sie reichen nicht aus, weil das verfahren funktioniert, nicht aus fehlern, aber nichts passiert.

natürlich in einem zweiten moment sollte ich variablen erstellen, um einige der "pt" punkte zu ersetzen

(s. es ist offensichtlich, dass ich ein neophyt von entmake und db von acad bin...)

danke und hallo
 
ich verstehe nicht. du meinst so was?
Code:
(defun c:vcoord (/ent idx pt ss totparam rot coord)

(vl-load-com)

(Satz '(0). "*poly*"))
(Progn)

(vla-get-activedocument)
(setq idx -1)

(while (setq idx (1+ idx))))

(setq ent (Name ss idx))
(setq totparam (fix (vlax-curve-getendparam ent)))))
(setq i -1)

(setq und (1+) totparam
(setq pt (vlax-curve-getpointatparam ent i))

(Ersatzkoord (10 pt)
(setq coord (strcat (rtos) "," (rtos)

(entmake)
(cons 0 "text")
(cons 10 pt)
(cons 40 0.36)
(cons 1 coord)
)
)
)

(setq pt (vlax-curve-getpointatparam ent (vlax-curve-getendparam ent))

(Ersatzkoord (10 pt)
(setq coord (strcat (rtos) "," (rtos)

(entmake)
(cons 0 "text")
(cons 10 pt)
(cons 40 0.36)
(cons 1 coord)
)
)
)

(vla-get-activedocument)
)
)
(princ)
)
 
hi.
inzwischen dank gp x die geschwindigkeit der antwort.
ich hab's versucht und es funktioniert gut.
in meinem beitrag sprach ich über "coordinated rate". diese art von quotenposition, mit hilfe eines textes, den wert der x (oder y), verglichen mit dem standard-ursprung in der zeichnung (die anders sein kann als "global"). wird auch mit dem zitat-stil verwaltet (im gegensatz zu dem einfachen text)
ich füge das dwg mit dem beispiel der koordinierten quote an, so dass sie seine eigenschaften sehen können (sie werden feststellen, dass der wert des textes in rot, mit ihrer lispe erhalten, wird an die wcs (global) gemeldet, während die koordinatenquoten in grün auf die aktuelle ux, die null auf der kante unten links des rechteckigen poly).
ich hänge auch eine datei mit den indikationen von gruppencodes an.
(in jedem fall wissen sie gut, dass mit der linie:
(zug)
sie können die db von acad x wissen die gruppencodes der quote)

natürlich ist die lispe, die auf der polylinie die koordinatenquoten (oder in englisch bestellt) ist sicherlich + komplex zu definieren + parameter hat aber mehrere vorteile in bezug auf den einfachen text. ich danke ihnen im voraus, wenn sie versuchen wollen, es zu entwickeln. .

hi.
 

Anhänge

hi.
auch dank der oben genannten beiträge, erhielt ich (teilweise) das gewünschte ergebnis. ich sage zum teil, weil mit der liste unten (die "befehl" verwendet und nicht die db von acad, so sicher weniger anspruchsvoll) ich habe das problem, dass alles den wcs gemeldet wird. dann, wenn sie (auch manuell) eine ucs in der zeichnung die positionierung der "koordinatedraten" wird bewegt. ich versuchte zu verwenden (trans pt von bis zu [spostamento]) ma senza risultati.
Welchecuno saprebbe kommen weit lavorare questo lisp sull'ucs (inserito dall'utente) anziche sul wcs?
Grazie

lisp creato:

----------

(defun c:cd (/ent und idx pt ss totparam rot coord)

(vl-load-com)

(Satz '(0). "*poly*"))
(Progn)

(vla-get-activedocument)
(setq idx -1)

(while (setq idx (1+ idx))))
(setq ent (Name ss idx))
(setq totparam (fix (vlax-curve-getendparam ent)))))
(setq i -1)

(setq und (1+) totparam
(setq pt (vlax-curve-getpointatparam ent i))

(setq ptx (rtos (+ 10)))
(setq pty (rtos (+ 10)))
(Befehl "_dimordinate" pt ".yz" ptx)
(Befehl "_dimordinate" pt ".xz" pt pty)
)

(setq pt (vlax-curve-getpointatparam ent (vlax-curve-getendparam ent))

(setq ptx (rtos (+ 10)))
(setq pty (rtos (+ 10)))
(Befehl "_dimordinate" pt ".yz" ptx)
(Befehl "_dimordinate" pt ".xz" pt pty)
)

(vla-get-activedocument)
)
)
(princ)
 

Statistik des Forums

Themen
58.521
Beiträge
499.056
Mitglieder
104.110
Neuestes Mitglied
ChristianR

Zurzeit aktive Besucher

Keine Mitglieder online.
Zurück
Oben