Community Tip - Learn all about the Community Ranking System, a fun gamification element of the PTC Community. X
Is it possible to get 3D model's each compoment's (modelItem) position information(x,y,z and rx,ry,rz) programmatically in Studio?
I know we could manually add model item widgets then we could know each component's position(x,y,z, rx,ry,rz) from the model item's properties.
E.g: If I add a Model Item widget, it will show me its position like below attached figure. And the requirement here is to check whether it's possible to get those position information of each components dynamically(programmatically, with js or else).
Korean customer Yellotail wants to get the position of each components dynamically so that they could further dynamically create 3D label and place it near the required component.
No it is not currently possible to do this. A proof of concept was delivered many years ago, supplying initial location data as metadata (using external tooling to access the information). The metadata project was split into multiple deliverables, and this is the third - the second (dynamic metadata) is soon to be delivered. This third item is awaiting prioritisation. Please contact the Product Management team, providing information on the customer and usecase - this should help in prioritising this work.
Note that an alternative is that if the customer only wants to position static content e.g. labels relative to an item, that we identify a mechanism to position content relative to other content. For information such as labelling moving parts (perhaps being subject to animation sequences created in creo illustrate) etc., this technically may be easier to do than to provide real-time update of the location which gets very expensive/complex when there are potentially hundreds or thousands of items moving at 30/60 fps. Hierarchical location wouldn't be difficult to do - tml already has the notion of 'parent' items, it just isn't used for labels.
This is why it isvery important to detail the usecase and explain to Product Management.
Thank you for your insight. And to clarify the use case in more details here:
Korean partner: Yellotail who makes project for Korean customer KOREA AEROSPACE INDUSTRIES requested this feature.
Use case:
Their experience contains handreds to thousands of parts/components and they tried to dynamically create 3D labels through TML/javascript and also want to display those labels in position near its corresponding parts/components. The parts are static parts not moving parts.
ok, so a good candidate for the static metadata location.
Did you contact the product management team? They know about the project request to add this capability, so contacting them will help place additioanl real customers against the original feature request