Bocht die door XYZ-punten gaat

Hallo

Ik heb een macro gemaakt waarmee ik een curve kan maken die door XYZ-punten gaat die zijn opgehaald uit een txt-bestand, in solidworks,

Maar ik kan deze functie niet bewerken om de vorm van mijn curve te veranderen met andere punten.

Hoe moet ik het doen? omdat ik niet elke keer een nieuwe curve wil creëren, wil ik uitgaan van de bestaande.

 

Bij voorbaat dank voor uw antwoorden.

Zou je je macro kunnen posten? En lokaliseer ons, waar blokkeer je?

1 like

Nou, in de macro die ik heb gemaakt, blokkeer ik nergens, in feite,

Alleen degene die ik heb gemaakt, stelt me alleen in staat om mijn curve te creëren en het werkt heel goed.

Maar het was gewoon een manier om goed controle te krijgen over het maken van macro's.

Wat ik wil doen, is dat ik vanuit mijn reeds gemaakte curvefunctie wil dat mijn macro mijn XYZ-curvefunctie bewerkt en nieuwe punten ophaalt om de vorm van mijn curve te veranderen.

Uiteindelijk kan ik gewoon niet de taal vinden die geschikt is voor het bewerken van een functie.

 

Hallo

 

Misschien een oplossing hier, je moet gebruiken:

FreePointCurveFeatureData::P ointArray-eigenschap om de definitie van XYZ-curve te bewerken. Raadpleeg de API-Help voor meer informatie over hoe de functiegegevens moeten worden gewijzigd.

 

https://forum.solidworks.com/thread/59437

 

Hoi ha.ta.ca

Zie deze tutorial

om curves te maken via X.Y.Z-punten

http://www.lynkoa.com/tutos/3d/video-tutorial-creating-curves-importing-point-data-text-file-solidworks

@+ ;-))

Hallo

Om ".PL" te antwoorden: 

Ik kan uw "woorden" niet integreren in mijn macro, "FreePointcurveFeatureData:: PointArray".

 

Om "gt22" te beantwoorden:

Ik heb al een macro gemaakt die een XYZ-curve maakt FUNCTIE, bijgevoegd,

 

Anders heb ik geprobeerd om een macro te maken die een curve maakt VIA een schets, maar het werkt niet :(,

(Ik wilde een curve maken via een schets omdat het later gemakkelijker te bewerken is"

 

macro FUNCTIE-curve: (werkt)

Dim swApp als SldWorks.SldWorks

Dim deel als SldWorks.ModelDoc2
Dim boolstatus als Booleaanse
Dim longstatus As Long, longwarnings As Long
Dim skiP als object
Dim myRefPlane als object
Dim skSegment als object


Sub hoofd()
Stel swApp = Toepassing.SldWorks in
Deel instellen = swApp.ActiveDoc

Open "Mappad\TC.txt" voor invoer als #1

Deel.InsertCurveFileBegin
                                                                    
Doen terwijl u niet EOF(1)
Invoer #1, X, Y, Z
boolstatus = Deel.InsertCurveFilePoint(X / 1000, Y / 1000, Z / 1000)
Strik
Sluiten #1

boolstatus = Deel.InsertCurveFileEnd()   
                                                    
boolstatus = Part.SelectedFeatureProperties(0, 0, 0, 0, 0, 0, 0, True, False, "spline stuurpen") 'NAAM SPLINE 'spline stuurpen'

Einde Sub

 

macro SKETCH curve :(werkt niet) Help!

Dim swApp als SldWorks.SldWorks
Dim deel als SldWorks.ModelDoc2
Dim boolstatus als Booleaanse
Dim longstatus As Long, longwarnings As Long
Dim skSegment als object
Dim pointArray als variant
Dim punten() Als object

Sub hoofd()
Stel swApp = Toepassing.SldWorks in
Deel instellen = swApp.ActiveDoc

Open "Mappad\TC2.txt" voor invoer als #1

boolstatus = Part.Extension.SelectByID2("Gezichtsvlak", "VLIEGTUIG", 0, 0, 0, Onwaar, 0, Niets, 0)
Deel.SketchManager.InsertSketch Waar
ReDim punten (0 tot 2) als object

Doen terwijl u niet EOF(1)
Invoer #1, X, Y, Z
punten(0) = X / 1000
punten(1) = Y / 1000
punten(2) = Z / 1000
Strik
Sluiten #1
Set skSegment = Part.SketchManager.CreateSpline((pointArray))


Deel.SketchManager.InsertSketch Waar

Einde Sub

Hallo

 

Er was een fout in de syntaxis van de functie die ik gaf, het is  :

IFreePointCurveFeatureData

En de link die zijn attributen geeft:

http://help.solidworks.com/2013/English/api/sldworksapi/SolidWorks.Interop.sldworks~SolidWorks.Interop.sldworks.IFreePointCurveFeatureData_members.html

 

Hallo

Onmogelijk om de woorden "Ifreepointcurvefeaturedata" te integreren,

Dus ik probeer de woorden "feateditdef" te gebruiken, het lijkt me best goed, maar ik kan het dialoogvenster  daarna niet vanzelf sluiten. Dus nog niet erg sluitend.