To be clear, I am not creating transient elements. I want to know if I can read transient elements created by another app or by MicroStation.
Hi Jon,
Jon Summers said:I believe that transient elements are located in a transient element cache or model?
because mdlModelRef_getTransient() function exists, I guess the is "transient model", that is not persisted anywhere (existing in-memory only during a session).
Jon Summers said:How can I read transient elements from that location?
Because it seems to be standard modelRef, probably normal iteration should work.
Jon Summers said:I want to know if I can read transient elements created by another app or by MicroStation.
A question is whether every application has own transient morel or not.
But, actually, why do you need to know what transient elements have been created by another applications?
Regards,
Jan
Bentley Accredited Developer: iTwin Platform - AssociateLabyrinth Technology | dev.notes() | cad.point
Jan Šlegr said:Because it seems to be standard modelRef
But how to I obtain a reference to the transient model?
Jan Šlegr said:Why do you need to know what transient elements have been created by another applications?
I'm investigating the realm of the possible, inspired by this question. If it were possible to obtain the transients of (in that example) a thematic display, then those could be used to create something else, such as a mesh element.
Regards, Jon Summers LA Solutions
Jon Summers said:But how to I obtain a reference to the transient model?
As I wrote: use mdlModelRef_getTransient()
I did not test it, but from the documentation: Gets the transient modelRef. The value returned will always be the same for a given session.
Jon Summers said:If it were possible to obtain the transients of (in that example) a thematic display, then those could be used to create something else, such as a mesh element.
In my opinion the idea that thematic display is based on transient elements is wrong (but of course, maybe I am not right completely ;-).
Reasons why it sounds weird to me are:
I assume it's graphic card responsibility to take input element, to process them (tessellation etc.) and to display using specific rendering.
Jan Šlegr said:In my opinion the idea that thematic display is based on transient elements is wrong (but of course, maybe I am not right completely ;-).
You are correct, no transients are involved.
Jan Šlegr said:Because it seems to be standard modelRef, probably normal iteration should work.
The "transient" modelRef isn't a real DgnModelRef for historical reasons and doesn't refer to a DgnModel so normal element read/write can't be used.
HTH
-B
Answer Verified By: Jon Summers