Jump to content
Developer Wiki and Function Reference Links ×

Redraw 3D-PIO when changing view


CodeGier

Recommended Posts

Hello,

my 3D-Path-PIO needs different drawing in plain 2D-View.

ActProjection := GetProjection(ActLayer);

pathHd:= GetCustomObjectPath(objHd);

IF pathHd <> NIL THEN BEGIN

IF ActProjection = 6 THEN DrawPIO2D(pathHd)

ELSE DrawPIO3D(pathHd);

END;

The problem: There is no redraw fired, when changing the views. So it draws not correct.

Is it possible, to have a redraw of a PIO every time user changes the View?

Josef

Link to comment

Just to expand on the hybrid design, pio's work similar to symbols. If the symbol only has a 2D component, then the same geometry shows in 2D & 3D view. But if the symbol has both 2D & 3D objects, then the symbol displays the appropriate geometry for the current view.

As Josh explained, the 2D & 3D objects need to be included in the code and VW will choose which objects to display.

I do wish there was a way to regenerate the pio on a view change. Although the scheme makes it easy to create a hybrid pio, it also adds code that is always compiled no matter the view. When working in 2D, there can be noticeable delays if the compiled 3D objects are very complex.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...