Hot News:
   

Mit Unterstützung durch:

  Foren auf CAD.de
  AutoCAD VBA
  Entity in Block aufnehmen

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

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 Autodesk Produkte
  
AutoCAD Schulung mit IHK-Zertifizierung , ein Kurs (bis zu 100% förderbar mit Bildungsgutschein)
Autor Thema:  Entity in Block aufnehmen (2154 mal gelesen)
Soldnerkugel
Mitglied



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

Beiträge: 131
Registriert: 29.01.2010

Win 7, AutoCAD Civil 3D 2015, SketchUp, CarlsonSurvCE

erstellt am: 07. Feb. 2012 11:23    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

ich habe mir eine Block definiert

Dim oBlock as AcadBlock

und eine dazugehörige Blockreferenz

Dim oBlockRed as AcadBlockReference

diesem Block kann ich ja mit

oBlock.AddLine StartPkt, EndPkt

eine Linie hinzufügen - kein Problem.


was mach ich aber, wenn ich eine Linie erst zeichnen und dann in den Block aufnehmen will?
ein "oBlock.AddAcadLine" gibt es ja nicht.
wie kann ich eine gezeichnete Linie nun dem Block hinzufügen?


nochmal mein Quelltext:

Dim oBlock as AcadBlock
Dim oBlockRef as AcadBlockreference
Dim oline as AcadLine
Dim StartPkt, EndPkt, as double

Set oline = ThisDrawing.ModelSpace.AddLine(StartPkt, EndPkt)

..und jetzt sollte "oBlock.nimm-oline-jetzt-in-Block-auf" kommen,
es gibt aber nur "oBlock.AddLine StartPkt, EndPkt"

kann mir da jemand bei diesem Problem weiterhelfen?

------------------

http://www.stupidedia.org/stupi/Rechter_Winkel

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13533
Registriert: 30.11.2003

ACAD 2008 Mechanical

erstellt am: 07. Feb. 2012 11:25    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 Soldnerkugel 10 Unities + Antwort hilfreich

... Methode  copyobjects des Documents  verwenden und den Block als neuen Owner angeben ... evtl. mußt du noch Koordinaten transformieren

------------------
      - Thomas -          
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

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

Soldnerkugel
Mitglied



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

Beiträge: 131
Registriert: 29.01.2010

Win 7, AutoCAD Civil 3D 2015, SketchUp, CarlsonSurvCE

erstellt am: 09. Feb. 2012 10:36    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

Danke für den Tip, leider klappt das irgendwie nicht so ganz.
Das Problem liegt bei mir hier

Dim oEntity as Object
Dim opline as ACADLWPolyline
Dim oApp as Object
Set oApp = ThisDrawing.Application
Dim oDoc as AcadDocument
Set oDoc = oApp.ActiveDocument
Dim oBlock as ACADBlock
[...]
Set opline = ThisDrawing.ModelSpace.AddLightWeightPolyline(dblVertices)
oEntity = opline
oDoc.CopyObjects oEntity, oBlock
[...]

"oEntity = opline" liefert einen Syntaxfehler

mir fällt aber beim besten Willen nichts ein, wie ich die LWPolylinie dem Object zuweisen soll, hast du da noch eine Hilfestellung für mich?

------------------

http://www.stupidedia.org/stupi/Rechter_Winkel

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

CADmium
Moderator
Maschinenbaukonstrukteur




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

Beiträge: 13533
Registriert: 30.11.2003

ACAD 2008 Mechanical

erstellt am: 09. Feb. 2012 10:44    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 Soldnerkugel 10 Unities + Antwort hilfreich

laut F1 erwartet copyobjekts auch kein Objekt sondern ein Feld ...

also

Dim objCollection(0 To 0) As Object
Dim retObjects As Variant
...
Set objCollection(0) = oPLine
...
retObjects = oDoc.CopyObjects(objCollection)
..

------------------
  - Thomas -          
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

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



Anzeige:Infos zum Werbeplatz >>

Layer-Manager CAD APP für Allgemeine Werkzeuge, Datenaustausch, Andere

Der Layer-Manager bringt Ordnung in das Layer-Chaos. Mit dem Layer-Manager können Sie Layer in einer hirarchischen Struktur verwalten und sortieren. Diese wird über den Namen des Layers abgebildet und im Layer-Manager entsprechend gekürzt. Das Ideale Werkzeug, wenn man mit vielen Layern arbeitet.

Soldnerkugel
Mitglied



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

Beiträge: 131
Registriert: 29.01.2010

Win 7, AutoCAD Civil 3D 2015, SketchUp, CarlsonSurvCE

erstellt am: 09. Feb. 2012 12:12    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

bzw. wenn ich varObjects einem Block hinzufügen möchte:
retObjects) = oDoc.CopyObjects(objCollection, oBlock)

herzlichen Dank! 

------------------

http://www.stupidedia.org/stupi/Rechter_Winkel

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

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

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

(c)2025 CAD.de | Impressum | Datenschutz