Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor VBA
  Konturlänge in 3D Skizze per VBA auslesen

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 Autodesk Produkte
Autor Thema:  Konturlänge in 3D Skizze per VBA auslesen (1726 mal gelesen)
VOSTA1
Mitglied
techn. Angestellter


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

Beiträge: 108
Registriert: 23.12.2002

erstellt am: 19. Jul. 2005 11:21    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

Hallo,
gibt es eine Möglichkeit, wenn man in einem Part eine 3D Skizze hat und dort eine Kontur definiert, die Länge dieser Kontur mittels VBA auszulesen ?

Im Inventor funktioniert es unter 
z.B. 3D-Skizze1 bearbeiten
Menü Extras -> Kontur messen
vorhandene Kontur mit Maus auswählen
nun wird der Wert in einer kleinen Box ausgegeben.

In der *.ipt ist nur eine 3D-Skizze und nur eine Kontur!

Wie komme ich an die Info per VBA?

MFG

[Diese Nachricht wurde von VOSTA1 am 19. Jul. 2005 editiert.]

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

PaulSchuepbach
Moderator
Programmierer




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

Beiträge: 1005
Registriert: 01.10.2003

erstellt am: 19. Jul. 2005 20:41    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 VOSTA1 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von VOSTA1:
[B]... eine 3D Skizze hat und dort eine Kontur definiert, die Länge dieser Kontur mittels VBA auszulesen ?

Hallo Vosta,

wenn's 'ne 3D-Linie ist, dann geht es so:

Private Sub getLenght3D()
 
  Dim oApp As Inventor.Application
  Set oApp = ThisApplication
 
  Dim oDoc As PartDocument
  Set oDoc = oApp.ActiveDocument
 
  Dim oSk3D As Sketch3D
  Set oSk3D = oDoc.ComponentDefinition.Sketches3D(1)
 
  Dim oLine As SketchLine3D
  Set oLine = oSk3D.SketchLines3D(1)
 
  Debug.Print Round(oLine.Length * 10, 3)

End Sub


Für andere Skizzenelemente (z.B. 3D-Spline) musst Du halt erst prüfen, was überhaupt in der Skizze ist.


Grüsse,

Paul
www.morecam.ch/cad.htm

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

Charly Setter
Ehrenmitglied V.I.P. h.c.




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

Beiträge: 11977
Registriert: 28.05.2002

Trau keiner Diva unter SP2....

erstellt am: 20. Jul. 2005 00: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 Nur für VOSTA1 10 Unities + Antwort hilfreich

Ich bin begeistert:

11 Zeilen, und davon 10 Zeilen Overhead.

Und da soll noch mal einer behaupten, Pascal-Programmierer wären Quasselstrippen 

------------------
Der vernünftige Mensch paßt sich der Welt an;
der unvernünftige besteht auf dem Versuch, die Welt sich anzupassen.

Deshalb hängt aller Fortschritt vom unvernünftigen Menschen ab.
(George Bernard Shaw)

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

VOSTA1
Mitglied
techn. Angestellter


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

Beiträge: 108
Registriert: 23.12.2002

erstellt am: 20. Jul. 2005 11: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

Schon mal vielen Dank an Paul für die schnelle Antwort !

Für die zweite weniger erquickliche Antwort.
Es würde auch mit 7 Zeilen gehen.
Über 25% Ersparnis das ist doch was?!?
############################################################
Private Sub getLenght3D_()
 
  Dim oApp As Inventor.Application
  Set oApp = ThisApplication
  Dim oDoc As PartDocument
  Set oDoc = oApp.ActiveDocument
  
  MsgBox oDoc.ComponentDefinition.Sketches3D.Item(1).SketchLines3D.Item(1).Length * 10
 
End Sub
##############################################################

Jetzt hab ich aber noch ein Problem.
es gibt 5 Arbeitspunkte, die mit 4 Linien verbunden sind,
und mit 3 Radien und alles auf einer Ebene

mit
oSk3D.SketchArcs3D.Item(1).Length * 10
oSk3D.SketchArcs3D.Item(2).Length * 10
oSk3D.SketchArcs3D.Item(3).Length * 10

bekomme ich die tatsächlichen Bogenlängen

und mit
oSk3D.SketchLines3D.Item(1).Length * 10
oSk3D.SketchLines3D.Item(2).Length * 10
oSk3D.SketchLines3D.Item(3).Length * 10
oSk3D.SketchLines3D.Item(4).Length * 10
bekomme ich die Linienlängen, aber nur die zwischen den
Arbeitspunkten, diese sind aber jetzt kürzer, da der Radius
vorhanden ist.

Mit einer einfachen Aufsummierung ist es nicht getan, um
die Länge des Splines zu bekommen.

Diese SketchLines3D müßten dann über Winkelfunktionen umgerechnet werden.

Bei einem Spline der nicht mehr auf einer Ebene liegt, sondern sich im Raum befindet, wird es wohl ganz schön aufwendig!

Ist das die einzige Möglichkeit?

MFG

[Diese Nachricht wurde von VOSTA1 am 20. Jul. 2005 editiert.]

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