Création de point sur segment de harnais sélectionné avec option extrémité en CATSCRIPT.
2 participants
Page 1 sur 1
Création de point sur segment de harnais sélectionné avec option extrémité en CATSCRIPT.
Bonjour tt le monde.
Je bloque sur un point de mon developpement en CATSCRIPT
apres avoir demander la selection d'un segment de harnais (HybridShapeSpline)
Set selection_courante = Documentcourant.Selection
je voudrais distribuer 50 points sur la courbe (le segment de harnais)
je cherche a faire marcher ce genre de fonction
Set hybridShapePointOnCurve1 = hybridShapeFactory1.AddNewPointOnCurveFromDistance(reference1, 0.000000, False)
J'ai essayer d'enregistrer la macro et de la rejouer mais ca bloque la !
Set length1 = parameters1.Item("Point\Distance") la methode item a echouéExclamation!
je trouve pas d'exemple la dessus je suis en V5R20
Merci beaucoup d'avance.
Je bloque sur un point de mon developpement en CATSCRIPT
apres avoir demander la selection d'un segment de harnais (HybridShapeSpline)
Set selection_courante = Documentcourant.Selection
je voudrais distribuer 50 points sur la courbe (le segment de harnais)
je cherche a faire marcher ce genre de fonction
Set hybridShapePointOnCurve1 = hybridShapeFactory1.AddNewPointOnCurveFromDistance(reference1, 0.000000, False)
J'ai essayer d'enregistrer la macro et de la rejouer mais ca bloque la !
Set length1 = parameters1.Item("Point\Distance") la methode item a echouéExclamation!
je trouve pas d'exemple la dessus je suis en V5R20
Merci beaucoup d'avance.
ours_brun83- timide
- Messages : 8
Date d'inscription : 31/01/2018
Localisation : VAR
Re: Création de point sur segment de harnais sélectionné avec option extrémité en CATSCRIPT.
Bonjour Pascal,
Pour récupérer la valeur du paramètre, il faut :
Set length1 = parameters1.Item("Point\Distance").value
As tu bien un paramètre nommé "Point\Distance" dans ta Part?
Si possible poste ton code complet (si n'y a pas de problème de confidentialité) ça permettra de le tester.
Pour récupérer la valeur du paramètre, il faut :
Set length1 = parameters1.Item("Point\Distance").value
As tu bien un paramètre nommé "Point\Distance" dans ta Part?
Si possible poste ton code complet (si n'y a pas de problème de confidentialité) ça permettra de le tester.
lumpazepfel- Fédérateur
- Messages : 319
Date d'inscription : 02/11/2015
Localisation : Ensisheim
ours_brun83- timide
- Messages : 8
Date d'inscription : 31/01/2018
Localisation : VAR
Re: Création de point sur segment de harnais sélectionné avec option extrémité en CATSCRIPT.
- Code:
Language="VBSCRIPT"
'pt sur segment
'fichier = essai pt sur segment
Sub CATMain()
Dim partDocument1 As Document
Set partDocument1 = CATIA.ActiveDocument
Dim part1 As Part
Set part1 = partDocument1.Part
Dim Documentcourant As Document
Set Documentcourant = CATIA.ActiveDocument
Dim bodies1 As Bodies
Set bodies1 = part1.Bodies
Dim body1 As Body
Set body1 = bodies1.Item("Corps principal")
Dim userselect As Selection
Dim selecteddElement
Dim SelectedElement2
Set userselect = CATIA.ActiveDocument.selection
'---------------------
'Demande de selection de la Courbe Flex
'-------------------------------------
msgbox "-------------------Suivre instruction en bas - statusBar --------------------"
Dim FiltreNo(0) As String
FiltreNo(0) = "AnyObject"
Dim Retour As String
Dim selection_cour As Selection
Set selection_cour = Documentcourant.selection
selection_cour.Clear
Retour = selection_cour.SelectElement2(FiltreNo,"Selectionner la courbe flexible a traiter", False)
Dim Corpschemin1 As String
Dim Courbeflex1 As String
Dim statusSelection As String
statusSelection = CATIA.StatusBar
Dim firstOccur As Long
firstOccur = InStr(1, statusSelection, "/")
Dim secondOccur As Long
secondOccur = InStrRev(statusSelection, "/")
Courbeflex1 = Left (statusSelection, firstOccur -1)
Corpschemin1 = Mid (statusSelection, firstOccur + 1, secondOccur - firstOccur -1)
'msgbox Corpschemin1 "Corps.------"
Dim hybridBodies1 As HybridBodies
Set hybridBodies1 = part1.HybridBodies
Dim hybridBody1 As HybridBody
Set hybridBody1 = hybridBodies1.Item(Cstr(Corpschemin1))
msgbox hybridBody1.Name
Dim hybridShapes1 As HybridShapes
Set hybridShapes1 = hybridBody1.HybridShapes
Dim hybridShapeSpline1 As HybridShape
Set hybridShapeSpline1 = hybridShapes1.Item(Cstr(Courbeflex1))
msgbox hybridShapeSpline1.Name
Dim reference1 As Reference
Set reference1 = part1.CreateReferenceFromObject(hybridShapeSpline1)
Dim hybridShapeFactory1 As Factory
Set hybridShapeFactory1 = part1.HybridShapeFactory
Dim hybridShapePointOnCurve1 As HybridShapePointOnCurve
Set hybridShapePointOnCurve1 = hybridShapeFactory1.AddNewPointOnCurveFromDistance(reference1, 0.000000, False)
hybridShapePointOnCurve1.DistanceType = 1
Dim hybridBody2 As HybridBody
Set hybridBody2 = hybridBodies1.Item("essai")
hybridBody2.AppendHybridShape hybridShapePointOnCurve1
part1.InWorkObject = hybridShapePointOnCurve1
part1.Update
Dim reference2 As Reference
Set reference2 = part1.CreateReferenceFromObject(hybridShapeSpline1)
Dim hybridShapePointOnCurve2 As HybridShapePointOnCurve
Set hybridShapePointOnCurve2 = hybridShapeFactory1.AddNewPointOnCurveFromDistance(reference2, 0.000000, False)
hybridShapePointOnCurve2.DistanceType = 1
hybridBody2.AppendHybridShape hybridShapePointOnCurve2
part1.InWorkObject = hybridShapePointOnCurve2
part1.Update
Dim Wzk3D As Factory
Set Wzk3D = CATIA.ActiveDocument.Part.HybridShapeFactory
Dim HBody As HybridBody
Set HBody = CATIA.ActiveDocument.Part.HybridBodies.Add
HBody.Name = "Points"
Dim Mypoint As HybridShapePointOnCurveWithReferenceFromPercent
Set Mypoint = Wzk3D.AddNewPointOnCurveWithReferenceFromPercent (reference1, reference2, 10 , False)
Dim lngPercentageStep As long
Dim n As Integer
Dim iNumberOfPoints as Integer
iNumberOfPoints = 50
lngPercentageStep = 1 / iNumberOfPoints
msgbox "ooo"
For n = 1 to iNumberOfPoints
Set Mypoint = HybridShapeFactory.AddNewPointOnCurveWithReferenceFromPercent (reference1, reference2, n * lngPercentageStep , False)
HBody.AppendHybridShape Mypoint
Mypoint.name ="HelpingPoint." & CStr(n)
Next
'hybridBody1.Name = Corpschemin1
'hybridShapeSpline1 = Courbeflex1
part1.Update
End Sub
ours_brun83- timide
- Messages : 8
Date d'inscription : 31/01/2018
Localisation : VAR
Re: Création de point sur segment de harnais sélectionné avec option extrémité en CATSCRIPT.
entre temps j'ai changé le code .. J'ai celui la qui va assez loin il cree 2 points au debut du segment et s'arrete a la boucle For next de la fin.
ours_brun83- timide
- Messages : 8
Date d'inscription : 31/01/2018
Localisation : VAR
Re: Création de point sur segment de harnais sélectionné avec option extrémité en CATSCRIPT.
a yest j'ai reussi , ouf
j'ai changé ca
Set Mypoint = Wzk3D.AddNewPointOnCurveWithReferenceFromPercent (reference1, reference2, n * lngPercentageStep , False)
et hop 50 pts sur la courbe selectionnée
A+
j'ai changé ca
Set Mypoint = Wzk3D.AddNewPointOnCurveWithReferenceFromPercent (reference1, reference2, n * lngPercentageStep , False)
et hop 50 pts sur la courbe selectionnée
A+
ours_brun83- timide
- Messages : 8
Date d'inscription : 31/01/2018
Localisation : VAR
Sujets similaires
» Programmation avec CATScript
» Section programmation CatScript, VBA, VB.NET...
» Capter l'option "Visualiser dans la BOM"
» Création d'une courbe avec une longueur prédéfini
» Création automatique d'un "Grid panel definition" avec VBA
» Section programmation CatScript, VBA, VB.NET...
» Capter l'option "Visualiser dans la BOM"
» Création d'une courbe avec une longueur prédéfini
» Création automatique d'un "Grid panel definition" avec VBA
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum