Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

[SolidEdge/VBA] object bewegen langs curve d.m.v. VBA

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben in Excel/VBA een programma aan het schrijven dat in Solid Edge d.m.v. een loop een geconstrained object over een curve laat bewegen. Elke sequence worden tevens alle variabelen geupdate. Deze wil ik later uitlezen en opslaan, dit heb ik al klaar maar moet ik nog koppelen.

Het probleem is dat ik niet de Move functie kan gebruiken omdat ik hier exacte verplaatsingen over elke as (x, y, z) moet aangeven. Dit kan niet omdat het object geconstrained is aan een curve waar ik de wiskunde definitie niet van weet en die nog wel eens kan veranderen. In Solid Edge zelf doe ik het handmatig met de functie Move Part. D.m.v. een Solid Edge spy tool ben ik erachter gekomen dat Solid Edge gebruik maakt van een functie AssemblyAssemblyRelationshipsMovePart maar ik weet niet hoe ik deze moet aanroepen of hoe welke parameters deze functie nodig heeft.

Iemand enig idee? Ik heb het halve internet al nagezocht maar kan nergens iets vinden. Dit is de code die ik tot nu toe heb, alleen staat hier nog de Move functie in maar die kan ik dus niet gebruiken.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Dim stopped As Boolean
   
Private Sub CommandButton1_Click()

Dim objApp As SolidEdgeFramework.Application
Dim objAsm As SolidEdgeAssembly.AssemblyDocument
Dim objOccurrences As SolidEdgeAssembly.Occurrences
Dim objOccurrence As SolidEdgeAssembly.Occurrence

Dim i As Integer

Set objApp = GetObject(, "SolidEdge.Application")
Set objAsm = objApp.ActiveDocument

For i = 0 To 10 Step 1

Call objAsm.Occurrences.Item(2).Move(-0.2, 0, 0)
objApp.StartCommand (SolidEdgeConstants.AssemblyCommandConstants.AssemblyAssemblyToolsUpdateAllLinks)
DoEvents
Sleep (2000)

Next i

End Sub