Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  API: Kanten, Flächen, ... eines Radius ermitteln

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 SOLIDWORKS
  
Smart Engineering Session: CAD-Automation in SOLIDWORKS in Hannover, eine Veranstaltung am 18.08.2026
Autor Thema:  API: Kanten, Flächen, ... eines Radius ermitteln (1419 mal gelesen)
tbd
Mitglied
Teamleiter


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

Beiträge: 825
Registriert: 26.01.2006

Dell Percision T5400
Intel(R) Xeon(R) CPU
X5460 @ 3.16GHz
3,25 GB RAM
Nvidia Quadro FX 4600
-----
Win XP Prof SP 3
SW 2008 SP 5.0
PARTsolutions 8.1.08
Cideon SAP PLM 5.103.5.17
Visual Studio 2008

erstellt am: 13. Nov. 2008 11:39    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


KanteDesRadius.jpg

 
Hallo Freunde der gepflegten API-Kunst,

ich hät da wieder mal ein Problem!

Ich benötige eine Instanz der Kante, an welcher ein Radius erzeugt wird (siehe Bild).
In VB 2005 habe ich bis jetzt folgendes versucht:

Code:
Dim oSaveArray As Object
Dim oArray() As Object
Dim oSwFeature As sldworks.Feature
oSaveArray = oSwModel.FeatureManager.GetFeatures(False)
If Not oSaveArray Is Nothing Then
    oArray = CType(oSaveArray, [Object]())
    For i As Integer = 0 To oArray.GetUpperBound(0)
        oSwFeature = CType(oArray(i), sldworks.Feature)
        Select Case oSwFeature.GetTypeName2
            Case "Fillet"
                Dim oSwFillet As sldworks.SimpleFilletFeatureData2
                oSwFillet = CType(oSwFeature.GetDefinition, _
                    sldworks.SimpleFilletFeatureData2)
                If oSwFillet.GetEdgeCount > 0 Then
                    Dim oDummy As Object
                    'Wie bekomme ich jetzt die Kanten?

                    'So geht es nicht
                    oDummy = oSwFillet.IGetEdges( _
                          oSwFillet.GetEdgeCount)
                    If oDummy IsNot Nothing Then
                        'Das wäre schön!
                        Debug.Assert(False)
                    End If
                    oDummy = oSwFillet.IGetEdges(0)
                    If oDummy IsNot Nothing Then
                        'Das wäre schön!
                        Debug.Assert(False)
                    End If
                    oDummy = oSwFillet.Edges
                    If oDummy IsNot Nothing Then
                        'Das wäre schön!
                        Debug.Assert(False)
                    End If
                End If
        End Select
    Next
End If


Leider bekomme ich bei den Methoden IGetEdges und Edges der SimpleFilletFeatureData2 Klasse immer nur Nothing zurück.

Vielleicht bin ich da aber auch auf dem absoluten Holzweg und die von mir gewünschte Kante ist in einer ganz anderen Methode und/oder Klasse versteck?!
Eine andere Methode habe ich jedoch noch nicht gefunden!

Wer kann mir da auf die Sprünge helfen?

------------------
Mfg Daniel

www.MySldWorks.de - SolidWorks Api Snippets

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

mkkk
Mitglied



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

Beiträge: 105
Registriert: 04.03.2005

erstellt am: 13. Nov. 2008 12:10    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 tbd 10 Unities + Antwort hilfreich

Nimm doch mal das Property
SimpleFilletFeatureData2.Edges() oder
SimpleFilletFeatureData2->get_Edges()

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

tbd
Mitglied
Teamleiter


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

Beiträge: 825
Registriert: 26.01.2006

Dell Percision T5400
Intel(R) Xeon(R) CPU
X5460 @ 3.16GHz
3,25 GB RAM
Nvidia Quadro FX 4600
-----
Win XP Prof SP 3
SW 2008 SP 5.0
PARTsolutions 8.1.08
Cideon SAP PLM 5.103.5.17
Visual Studio 2008

erstellt am: 13. Nov. 2008 12:17    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

Hallölle,

SimpleFilletFeatureData2.Edges habe ich schon versucht (siehe Code oben). get_Edges is kein VB, und ich schreibe meine Anwendung in VB 2005 (siehe oben).

Laut API Hilfe sollte SimpleFilletFeatureData2.Edges klappen. Tut es aber bei mir nicht! Die Mehtode SimpleFilletFeatureData2.GetEdgeCount funktioniert ohne zu murren und liefert mir die richtige Anzahl, aber ich bekomme die Kanten-Objekte nicht!

Was liefert bei euch die Eigenschaft SimpleFilletFeatureData2.Edges?

------------------
Mfg Daniel

www.MySldWorks.de - SolidWorks Api Snippets

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

tbd
Mitglied
Teamleiter


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

Beiträge: 825
Registriert: 26.01.2006

Dell Percision T5400
Intel(R) Xeon(R) CPU
X5460 @ 3.16GHz
3,25 GB RAM
Nvidia Quadro FX 4600
-----
Win XP Prof SP 3
SW 2008 SP 5.0
PARTsolutions 8.1.08
Cideon SAP PLM 5.103.5.17
Visual Studio 2008

erstellt am: 13. Nov. 2008 12:47    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 habs befürchtet!
Bei Fasen ist es das gleiche Spiel! Das Dumme daran ist, dass ich auch diese Information für meine Anwendung benötige.

Einzige Hoffnung ist das ich nicht glaube das in zwei Klassen die Befehle nicht gehen.
Irgend etwas habe ich bestimmt übersehen.

------------------
Mfg Daniel

www.MySldWorks.de - SolidWorks Api Snippets

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

u.clemens
Mitglied
Konstrukteur


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

Beiträge: 964
Registriert: 04.07.2000

engineer's law
o cheap
o fast
o good
check only two !

erstellt am: 13. Nov. 2008 13:32    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 tbd 10 Unities + Antwort hilfreich

vermutlich hast du vergessen, mit der AccessSelections-Methode der Einfügebalken zurückzurollen ???
Ohne das gibts keinen Zugriff auf die Daten, die du erhalten willst.
zum Schluß nicht vergessen den Einfügebalken wieder zurückzurollen.

In der API-Hilfe bei SimpleFilletFeatureData2::Edges die Remarks See Accessing Selections that Define Features for details on using this property gelesen ? Dort wirds erklärt, auch mit Beispiel.

------------------
mfg uc

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

tbd
Mitglied
Teamleiter


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

Beiträge: 825
Registriert: 26.01.2006

Dell Percision T5400
Intel(R) Xeon(R) CPU
X5460 @ 3.16GHz
3,25 GB RAM
Nvidia Quadro FX 4600
-----
Win XP Prof SP 3
SW 2008 SP 5.0
PARTsolutions 8.1.08
Cideon SAP PLM 5.103.5.17
Visual Studio 2008

erstellt am: 13. Nov. 2008 13:46    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

Bingo!
Das ist es, so klappts auch mit dem Nachbarn!

Hatte mir scho gedacht das es in so eine Richtung geht!

Vielen Dank für den Hinweis!

------------------
Mfg Daniel

www.MySldWorks.de - SolidWorks Api Snippets

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)2024 CAD.de | Impressum | Datenschutz