Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor VBA
  Gewinde

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:  Gewinde (1780 mal gelesen)
TimC
Mitglied



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

Beiträge: 21
Registriert: 26.02.2008

erstellt am: 26. Mrz. 2008 10: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

Hallo zusammmen,

ist es unter Inventor VBA möglich festzustellen ob ein Bauteil ein Gewinde besitzt?

Mit dem "HoleFeature" konnte ich es nicht feststellen.

Gruß, Tim

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

daywa1k3r
Moderator
Softwareentwickler




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

Beiträge: 3497
Registriert: 01.08.2002

Alienware m17x, Win7, Inventor2012

erstellt am: 26. Mrz. 2008 11:07    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 TimC 10 Unities + Antwort hilfreich

ThreadFeature?

Code:

Inventor.PartDocument.ComponentDefinition.Features.ThreadFeatures.Count

------------------
Grüße Igor

FX64 Software Solutions

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

SEHER
Mitglied
Systemanalytiker


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

Beiträge: 1203
Registriert: 13.03.2001

erstellt am: 26. Mrz. 2008 11:08    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 TimC 10 Unities + Antwort hilfreich

Hallo,
schau mal im Inventor unter Pulldownmenü ?  / Programmierhilfe / Inhalt /Samples und dort die Beispiele bei features.

Dort ist glaub ich etwas.

------------------
Gruß
SEHER
www.inventor-tools.de

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

TimC
Mitglied



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

Beiträge: 21
Registriert: 26.02.2008

erstellt am: 26. Mrz. 2008 11:15    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

an daywa1k3r: Hatte ThreadFeature auch schon ausprobiert. Bekomm aber bei Count immer "0" zurück.

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: 26. Mrz. 2008 11:37    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 TimC 10 Unities + Antwort hilfreich

Hallo Tim,

die Flag 'Tapped' gibt 'True' zurück, falls die Bohrung ein Gewinde hat, sonst 'False'


Public Sub getHoleInfo()
 
  Dim oApp As Inventor.Application
  Set oApp = ThisApplication
 
  Dim oDoc As PartDocument
  Set oDoc = oApp.ActiveDocument
 
  Dim oCD As PartComponentDefinition
  Set oCD = oDoc.ComponentDefinition
 
  For i = 1 To oCD.Features.HoleFeatures.Count
 
    Debug.Print oCD.Features.HoleFeatures(i).Tapped
 
  Next i

End Sub


HTH

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

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

Meine Tochter auf Youtube

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

TimC
Mitglied



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

Beiträge: 21
Registriert: 26.02.2008

erstellt am: 26. Mrz. 2008 12:34    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 Paul,

Dankeschön genau das habe ich gesucht!

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

ylps
Mitglied



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

Beiträge: 89
Registriert: 29.07.2005

Inventor 10
INV 2008

erstellt am: 31. Mrz. 2008 09:35    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 TimC 10 Unities + Antwort hilfreich

Auch von meiner Seite aus Danke 
Damit wäre für uns leider aber erst die erste Hälfte unseres Problems gelöst! Wie kann ich jetzt die Eigenschaft (Farbe) des Gewindes ändern? Wir haben/wollen jedem Gewindedurchmesser (und Bohrungen) eine Farbe zuweisen.
Gruß
und Danke
Michael

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

daywa1k3r
Moderator
Softwareentwickler




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

Beiträge: 3497
Registriert: 01.08.2002

Alienware m17x, Win7, Inventor2012

erstellt am: 31. Mrz. 2008 09: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 TimC 10 Unities + Antwort hilfreich

Feature.Faces? Und dann für alle Flächen den Renderstyle überschreiben? Ist nur so eine Idee...

------------------
Grüße Igor

FX64 Software Solutions

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

ylps
Mitglied



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

Beiträge: 89
Registriert: 29.07.2005

Inventor 10
INV 2008

erstellt am: 03. Apr. 2008 14:56    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 TimC 10 Unities + Antwort hilfreich

leider komme ich mit meinen MINI-Kenntnissen an VBA doch nicht weiter. Den Durchmesser kann ich zwar jetzt abfragen, aber wie fragt man den Durchmesser einer Gewindebohrung ab? Und das Ändern der Farbe des Gewindes bzw. Bohrung klappt auch nicht. Hat jemand von Euch eine weiterführende Antwort für mich parat?
Gruß
Michael

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

ylps
Mitglied



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

Beiträge: 89
Registriert: 29.07.2005

Inventor 10
INV 2008

erstellt am: 08. Mai. 2008 10:07    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 TimC 10 Unities + Antwort hilfreich

ich kann zwar jetzt so gut wie alle Geometriedaten von Gewinde und Bohrungen abfragen, aber ich weiß nicht weiter! Wie kann ich die Farbe des Gewindes/Bohrung abfragen bzw. wie kann ich z.Bsp. die Gewinde alle blau machen und die Bhrungen rot? Leider weiß ich nicht wie ich den Befehl ...Feature.Faces einsetzen kann?
Gruß
Mcihael

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

TimC
Mitglied



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

Beiträge: 21
Registriert: 26.02.2008

erstellt am: 08. Mai. 2008 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

Hallo,

weiß jetzt nicht genau ob du das meinst:

Probier mal folgenden Code:

Code:

Sub BohrungRenderStyle()
Dim Doc As PartDocument
Set Doc = ThisApplication.ActiveDocument

Dim oBlueStyle As RenderStyle, oRedStyle As RenderStyle
Set oBlueStyle = Doc.RenderStyles("Blau")
Set oRedStyle = Doc.RenderStyles("Rot")

Dim oHoleFeature As HoleFeature
For Each oHoleFeature In Doc.ComponentDefinition.Features.HoleFeatures
    If oHoleFeature.Tapped = True Then
        'Gewinde
        oHoleFeature.SetRenderStyle kOverrideRenderStyle, oBlueStyle
    Else
        oHoleFeature.SetRenderStyle kOverrideRenderStyle, oRedStyle
    End If
Next

End Sub


Hab den Code jetzt nicht kommentiert. Wenn du was nicht verstehst sag einfach bescheid!

P.S. : Die Farbe kannst du später hiermit auslesen: oHoleFeature.GetRenderStyle(kOverrideRenderStyle).Name

Gruß, Tim

[Diese Nachricht wurde von TimC am 08. Mai. 2008 editiert.]

[Diese Nachricht wurde von TimC am 08. Mai. 2008 editiert.]

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

ylps
Mitglied



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

Beiträge: 89
Registriert: 29.07.2005

Inventor 10
INV 2008

erstellt am: 08. Mai. 2008 12:35    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 TimC 10 Unities + Antwort hilfreich

toll,  genau das was ich wollte. Wenn ich den Code so sehe, hätte ich auch drauf kommen können! Bin ich aber nicht
Danke
Michael

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

TimC
Mitglied



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

Beiträge: 21
Registriert: 26.02.2008

erstellt am: 08. Mai. 2008 12: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

Zitat:
Original erstellt von ylps:
...Wenn ich den Code so sehe, hätte ich auch drauf kommen können!...

Das kenn' ich 

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

ylps
Mitglied



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

Beiträge: 89
Registriert: 29.07.2005

Inventor 10
INV 2008

erstellt am: 03. Sep. 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 TimC 10 Unities + Antwort hilfreich

Hallo TimC

bisher hat das Macro toll geklappt. Jetzt musste ich auf einenen anderen Rechner und jetzt bleibt das Macro bei:
-> Set oBlueStyle = Doc.RenderStyles("Blau") <-
stehen
Keine Ahnung warum!
Kann mir jemand helfen?
Gruß
Michael

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. Sep. 2008 19:37    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 TimC 10 Unities + Antwort hilfreich

Hallo Michael,

ich schätze mal, dass es auf diesem Rechner der RenerStyle 'Blau' nicht gibt - das fürhrt an dieser Stelle zwangsläufig zum Absturz.

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

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

Meine Tochter auf Youtube

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

TimC
Mitglied



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

Beiträge: 21
Registriert: 26.02.2008

erstellt am: 04. Sep. 2008 07: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

Hallo,

wie PaulSchuepbach schon sagte gibt es wahrscheinlich den RenderStyle nicht!

Entweder du fügst ihn von Hand ein - oder - du fügst in ein per VBA-Code:

Code:

Sub BohrungRenderStyle()
Dim Doc As PartDocument
Set Doc = ThisApplication.ActiveDocument

Dim oBlueStyle As RenderStyle, oRedStyle As RenderStyle

' Prüfe ob die Farbe "Blau" vorhanden ist
If CheckStyleByName(Doc, "Blau") Then
    Set oBlueStyle = Doc.RenderStyles("Blau")
Else
    ' Die Farbe "Blau" einfügen
    Set oBlueStyle = Doc.RenderStyles.Add("Blau")
    oBlueStyle.SetAmbientColor 0, 0, 255
    oBlueStyle.SetDiffuseColor 0, 0, 255
    oBlueStyle.SetEmissiveColor 0, 0, 0
    oBlueStyle.SetSpecularColor 255, 255, 255
End If

' Prüfe ob die Farbe "Rot" vorhanden ist
If CheckStyleByName(Doc, "Rot") Then
    Set oRedStyle = Doc.RenderStyles("Rot")
Else
    ' Die Farbe "Rot" einfügen
    Set oRedStyle = Doc.RenderStyles.Add("Rot")
    oRedStyle.SetAmbientColor 255, 0, 0
    oRedStyle.SetDiffuseColor 255, 0, 0
    oRedStyle.SetEmissiveColor 0, 0, 0
    oRedStyle.SetSpecularColor 255, 255, 255
End If

Dim oHoleFeature As HoleFeature
For Each oHoleFeature In Doc.ComponentDefinition.Features.HoleFeatures
    If oHoleFeature.Tapped = True Then
        'Gewinde
        oHoleFeature.SetRenderStyle kOverrideRenderStyle, oBlueStyle
    Else
        oHoleFeature.SetRenderStyle kOverrideRenderStyle, oRedStyle
    End If
Next

End Sub

Private Function CheckStyleByName(Doc As Document, Name As String) As Boolean

Dim oRender As RenderStyle
For Each oRender In Doc.RenderStyles
    If oRender.Name = Name Then
        CheckStyleByName = True
        Exit Function
    End If
Next

CheckStyleByName = False

End Function


Gruß

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

ylps
Mitglied



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

Beiträge: 89
Registriert: 29.07.2005

Inventor 10
INV 2008

erstellt am: 05. Sep. 2008 12:15    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 TimC 10 Unities + Antwort hilfreich

das ist's gewesen!
Problem gelöst!
Danke  
Michael

Wieder was dazu gelernt. Jetzt weiß ich warum manche Farben auch nicht gegangen sind, die müssen alle im Normen-Editor -> Farbe eingetragen sein. So kleine Kleinigkeiten können das Leben ganz schon erschweren!

[Diese Nachricht wurde von ylps am 05. Sep. 2008 editiert.]

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

surfhai
Mitglied
Konstruktions Ingenieur


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

Beiträge: 435
Registriert: 11.08.2004

erstellt am: 18. Sep. 2008 08: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 TimC 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von ylps:
leider komme ich mit meinen MINI-Kenntnissen an VBA doch nicht weiter. Den Durchmesser kann ich zwar jetzt abfragen, aber wie fragt man den Durchmesser einer Gewindebohrung ab? Und das Ändern der Farbe des Gewindes bzw. Bohrung klappt auch nicht. Hat jemand von Euch eine weiterführende Antwort für mich parat?
Gruß
Michael

Könntest du ein paar Beispiele hier reinschreiben, ich häng nämlich am selben Problem und komm nich weiter 

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