Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor VBA
  Ausrichten eines Rechtecks

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:  Ausrichten eines Rechtecks (2617 mal gelesen)
noctis79
Mitglied
Konstrukteur/ CAD-Administrator


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

Beiträge: 164
Registriert: 07.10.2009

Inventor Pro 2017
Cideon Workspace

erstellt am: 02. Okt. 2011 18: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

Hallo,

hab mal wieder ein Problem...

Makro macht bis jetzt folgendes:
Anlegen eines neuen Bauteils
Skizze auf die XY- Ebene
Zeichnen eines Rechtecks
Bemaßen des Rechtecks

Jetzt möchte ich noch den Mittelpunkt der vertikalen Linie Horizontal zum Ursprungpunkt und den Mittelpunkt der horizontalen Linie vertikal zum Ursprungspunkt ausrichten. Leider komme ich an dieser Stelle nicht weiter...
Ich kann auf StartSketchPoint und EndSketchPoint der Linie zugreifen, einen MidPoint habe ich leider nicht gefunden...
Desweiteren würde es mich mal interessieren, wie Ihr vorgeht wenn Ihr eine Abhängigkeit auf den Ursprungspunkt setzt. Projiziert Ihr den in die Skizze oder greift Ihr direkt darauf zu?

Danke für Eure Hilfe!

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

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik




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

Beiträge: 2166
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 03. Okt. 2011 09:31    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 noctis79 10 Unities + Antwort hilfreich

Hi

Unter SketchLine.Geometry ist doch der Mittelpunkt. 

Du mußt den Ursprung projezieren, sonst existiert in der Skizze der Punkt nicht.

------------------
MfG
RK

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

noctis79
Mitglied
Konstrukteur/ CAD-Administrator


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

Beiträge: 164
Registriert: 07.10.2009

Inventor Pro 2017
Cideon Workspace

erstellt am: 03. Okt. 2011 14: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

Moing,

immer die gleichen hier ^^

Ja, den hab ich gestern auch noch entdeckt.
Mein Problem ist jetzt aber, dass
oOSketch.GeometricConstraints.AddHorizontalAlign
einen SketchPoint verlangt.
Der von Dir beschriebene Punkt ist aber ein Point2d.

Kann man den irgendwie in einen SketchPoint umwandeln oder muss der vorher Projeziert werden?!?

Hab im Moment noch 2 Mittellinien eingefügt da der Start und Endpunkt als SketchPoint vorhanden ist...

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: 03. Okt. 2011 16:40    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 noctis79 10 Unities + Antwort hilfreich

Hallo,

SketchLine.StartSketchPoint und SketchLine.EndSketchPoint sind SketchPoint-Objekte - allerdings sind SketchLine.Geometry.StartPoint, MidPoint und EndPoint Pont2D Objekte und daamit wird's nicht gehen.

Wiesoo machst Du nicht einfach eine 2. DimensionConstraint hin ? Der Code ist nur quick&dirty, mach ein neues BT auf mit aktiver Skizze und lass den Code laufen...

Code:
Private Sub AddDims()
 
  Dim oApp As Inventor.Application
  Set oApp = ThisApplication
 
  Dim oDoc As PartDocument
  Set oDoc = oApp.ActiveDocument
 
  Dim oCD As PartComponentDefinition
  Set oCD = oDoc.ComponentDefinition
 
  Dim oSketch As PlanarSketch
  Set oSketch = oCD.Sketches(1)
 
  ' 1. Mass
  Dim oPt_1 As Point2d
  Set oPt_1 = oApp.TransientGeometry.CreatePoint2d(5, 0)
 
  Dim oDim_1 As DimensionConstraint
  Set oDim_1 = oSketch.DimensionConstraints.AddOffset(oSketch.SketchLines(1), oSketch.SketchLines(3), oPt_1, False)
  oDim_1.Parameter.value = 5
 
 
  ' 2. Mass = Mass1 / 2
  Dim oPt_2 As Point2d
  Set oPt_2 = oApp.TransientGeometry.CreatePoint2d(4, -1)
 
  Dim oDim_2 As DimensionConstraint
  Set oDim_2 = oSketch.DimensionConstraints.AddOffset(oSketch.SketchLines(1), oSketch.SketchPoints(1), oPt_2, False)
  oDim_2.Parameter.Expression = oDim_1.Parameter.Name & " / 2"
 
 
  ' 3. Mass
  Dim oPt_3 As Point2d
  Set oPt_3 = oApp.TransientGeometry.CreatePoint2d(0, 5)
 
  Dim oDim_3 As DimensionConstraint
  Set oDim_3 = oSketch.DimensionConstraints.AddOffset(oSketch.SketchLines(2), oSketch.SketchLines(4), oPt_3, False)
  oDim_3.Parameter.value = 7
 
 
  ' 4. Mass = Mass3 / 2
  Dim oPt_4 As Point2d
  Set oPt_4 = oApp.TransientGeometry.CreatePoint2d(1, 4)
 
  Dim oDim_4 As DimensionConstraint
  Set oDim_4 = oSketch.DimensionConstraints.AddOffset(oSketch.SketchLines(2), oSketch.SketchPoints(1), oPt_4, False)
  oDim_4.Parameter.Expression = oDim_3.Parameter.Name & " / 2"
 
  oDoc.Update

End Sub


HTH

------------------
Grüsse, Paul

Inventor-Programmierung, Inventor-Tools und Inventor API-Schulung

Online 3D-Ersatzteilkataloge

Meine Tochter auf Youtube

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

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik




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

Beiträge: 2166
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 03. Okt. 2011 17:28    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 noctis79 10 Unities + Antwort hilfreich

Hi

Inventor macht das glaub ich anders. Es wird ein Sketchpoint mit einem MidPointConstraint auf der selektierten Linie erstellt. Dieser SketchPoint wird dann horizontal zum projezierten Ursprung gesetzt.

Code:
Public Sub HorziAlign()
    Dim oPartDoc As PartDocument
    Set oPartDoc = ThisApplication.ActiveDocument
                   
    Dim oCompDef As PartComponentDefinition
    Set oCompDef = oPartDoc.ComponentDefinition
   
    Dim oSketch As PlanarSketch
    Set oSketch = oCompDef.Sketches.Item(1)
   
    Dim oSelection As SketchLine
    Set oSelection = oPartDoc.SelectSet.Item(1)
   
    Dim oPoint1 As SketchPoint
    Dim oPoint2 As SketchPoint
       
    Set oPoint1 = oSketch.AddByProjectingEntity(oCompDef.WorkPoints.Item(1))
   
    Set oPoint2 = oSketch.SketchPoints.Add(oSelection.Geometry.MidPoint, False)
   
    Call oSketch.GeometricConstraints.AddMidpoint(oPoint2, oSelection)
   
    Call oSketch.GeometricConstraints.AddHorizontalAlign(oPoint1, oPoint2)
       
End Sub


------------------
MfG
RK

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

noctis79
Mitglied
Konstrukteur/ CAD-Administrator


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

Beiträge: 164
Registriert: 07.10.2009

Inventor Pro 2017
Cideon Workspace

erstellt am: 08. Okt. 2011 20:51    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 die Antworten!
Werd ich alles mal durchprobieren und sehen, was für mich am
besten geeignet ist...

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