Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  VBA Oberflächenerstellung

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
Autor Thema:  VBA Oberflächenerstellung (2121 mal gelesen)
Arne T.
Mitglied



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

Beiträge: 23
Registriert: 07.11.2011

SW2010 SP0.0

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

Moin zusammen,

eine kurze Frage habe ich an euch:
Wie bekomme ich eine ausgefüllte Oberfläche innerhalb von Linien per VBA eingesteuert?
Ich habe den Makro-Rekorder laufen lassen, allerdings sagt der nur, dass 4 Linien markiert wurden, den Befehl zum Erstellen der Oberfläche (begrenzt durch diese Linien) lässt dieser aber aus.

Danke schonmal für die Hilfe.

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

StefanBerlitz
Guter-Geist-Moderator
IT Admin (CAx)



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

Beiträge: 8756
Registriert: 02.03.2000

SunZu sagt:
Analysiere die Vorteile, die
du aus meinem Ratschlag ziehst.
Dann gliedere deine Kräfte
entsprechend und mache dir
außergewöhnliche Taktiken zunutze.

erstellt am: 14. Nov. 2011 08:49    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 Arne T. 10 Unities + Antwort hilfreich

Hallo Arne,

es gibt ziemlich viele Möglichkeiten Oberflächen zu erzeugen, meinst du vielleicht FeatureManager::InsertFillSurface2 (Einfügen/Oberfläche/Ausfüllen)?

Ich hab da auch kein Beispiel zu, abe reinen Tipp, wie du ggf. an die Funktionen in der API Hilfe kommst: stell dein SolidWorks auf Englisch um, schau, wie die Funktionen in den Menus oder so in englisch heißen und such danach in der API Hilfe, da sind dann sehr oft gute Treffer dabei.

Ciao,
Stefan

------------------
Inoffizielle deutsche SolidWorks Hilfeseite    http://solidworks.cad.de
Stefans SolidWorks Blog

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

Arne T.
Mitglied



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

Beiträge: 23
Registriert: 07.11.2011

SW2010 SP0.0

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

Moin Stefan,

oh, das klingt gut! Muss ich heute abend direkt mal ausprobieren, wenn ich wieder am SW-Rechner sitze.

Braucht der denn dann auch noch diese ganzen ()-Bedingungen dahinter, so wie man es von anderen Befehlen kennt? Also das in der Klammer sowas wie (true,false,0,0,schlag mich tot) steht? (Kanns leider gerade nicht genauer schreiben, da wie gesagt momentan kein SW in der Nähe ist! 

Gruß, Arne

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

StefanBerlitz
Guter-Geist-Moderator
IT Admin (CAx)



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

Beiträge: 8756
Registriert: 02.03.2000

SunZu sagt:
Analysiere die Vorteile, die
du aus meinem Ratschlag ziehst.
Dann gliedere deine Kräfte
entsprechend und mache dir
außergewöhnliche Taktiken zunutze.

erstellt am: 14. Nov. 2011 12:06    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 Arne T. 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Arne T.:
Braucht der denn dann auch noch diese ganzen ()-Bedingungen dahinter, so wie man es von anderen Befehlen kennt? Also das in der Klammer sowas wie (true,false,0,0,schlag mich tot) steht?

Oh ja, das braucht es, und schon die Paramterübergabe scheint nicht so ganz trivial:

Zitat:
Auszug aus der API Hilfe zu InsertFillSurface2
Inserts a fill-surface feature in the model.
.NET Syntax
Visual Basic (Declaration) 
Function InsertFillSurface2( _
  ByVal Resolutions As Integer, _
  ByVal Options As Integer, _
  ByVal VPatchBoundaries As Object, _
  ByVal VCurvatureControlType As Object, _
  ByVal VFaces As Object, _
  ByVal VConstraintCurves As Object _
) As Feature

Visual Basic (Usage) Copy Code
Dim instance As IFeatureManager
Dim Resolutions As Integer
Dim Options As Integer
Dim VPatchBoundaries As Object
Dim VCurvatureControlType As Object
Dim VFaces As Object
Dim VConstraintCurves As Object
Dim value As Feature

value = instance.InsertFillSurface2(Resolutions, Options, VPatchBoundaries, VCurvatureControlType, VFaces, VConstraintCurves)

C# 
Feature InsertFillSurface2(
  int Resolutions,
  int Options,
  object VPatchBoundaries,
  object VCurvatureControlType,
  object VFaces,
  object VConstraintCurves
)

C++/CLI 
Feature^ InsertFillSurface2(
&  int Resolutions,
&  int Options,
&  Object^ VPatchBoundaries,
&  Object^ VCurvatureControlType,
&  Object^ VFaces,
&  Object^ VConstraintCurves
)

NOTE: See Differences Between Unmanaged C++ and C++/CLI Code.
Parameters
Resolutions
Controls the resolution or quality of the surface (see Remarks)

Options
Options as defined in swFeatureFillSurfaceOptions_e

VPatchBoundaries
Array of edges or sketches for the patch boundaries
VCurvatureControlType
Array of curve control methods as defined in swContactType_e
VFaces
Array of faces to use for direction
VConstraintCurves
Array of constraint curves (edges or sketches)
Return Value
Pointer to the IFeature object
Visual Basic for Applications (VBA) Syntax
See FeatureManager::InsertFillSurface2.
Remarks
You must use IModelDocExtension::SelectByID2 and the following Mark values to select edges that bound the surface to be filled:

Boundary curves = 1

Boundary with contact curvature control = 257

Boundary with tangent curvature control = 513

Constraint curves or internal curves = 4

The resolution argument can be set to 1, 2, or 3. The higher the value, the better the resolution.

Use the IBody2::Diagnose and the IDiagnoseResult APIs to get the gaps to fill.
 
See Also
IFeatureManager Interface
IFeatureManager Members
IFillSurfaceFeatureData Interface

Availability
SolidWorks 2007 FCS, Revision Number 15.0



Da hast du dann wohl schon was zu Knobeln, bis alle Parameter stehen, richtig angeordnet sind und was vernünftiges dabei herauskommt 

Ciao,
Stefan

------------------
Inoffizielle deutsche SolidWorks Hilfeseite    http://solidworks.cad.de
Stefans SolidWorks Blog

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

Arne T.
Mitglied



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

Beiträge: 23
Registriert: 07.11.2011

SW2010 SP0.0

erstellt am: 14. Nov. 2011 15: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

na herzlichen Glückwunsch, ich freu mich jetzt schon auf heute abend ... 

Aber wenn man sich das genauer anschaut, dann geht es ja - weisst du ob man direkt einen Namen für die Oberfläche vergeben kann oder ist man an die automatische Namensvergabe für ein Feature (in diesem Falle die Oberfläche) gebunden?
Ich weiss, tut mir leid, immer wieder neue Fragen ... 

Danke schonmal für deine Hilfe, da bin ich auf jeden Fall wieder schlauer!

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