New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] Add multi-segment page, and callout pointers #67

trevorsandy opened this Issue Aug 21, 2018 · 1 comment


1 participant
Copy link

trevorsandy commented Aug 21, 2018


Add the ability to create segments and joints on pointers

Your environment

  • Version of LPub3D - v2.2.2
  • Operating system - All

Expected behaviour

Allow the ability to create multi-segment pointers

Actual behaviour

Only straight pointers are currently available



Solution suggestion

Segmentable pointers

@trevorsandy trevorsandy added the feature label Aug 21, 2018

@trevorsandy trevorsandy added this to the v2.3.0 milestone Aug 21, 2018

@trevorsandy trevorsandy self-assigned this Aug 21, 2018


This comment has been minimized.

Copy link

trevorsandy commented Aug 21, 2018

First phase completed.

LPub3D v2.3.0 offers the ability create object pointers with up to three segments per pointer.

screenshot - 25_08_2018 04_44_04

Multi-segment pointers can presently be configured from a Callout or Page border with the pointer directed towards an assembly (CSI). Configuring multi-segment pointers for a Step Divider and directing a pointer to an inserted image should be available in a near future release. These enhancements will target the next phase of segmentable pointers.

screenshot - 25_08_2018 04_39_22

To place a pointer from a page border toward an assembly, use the Step assembly's context menu (right-click) and select Place Page Pointer.

screenshot - 25_08_2018 02_45_08

Select the pointer origin placement from the location dialog.

screenshot - 25_08_2018 04_26_16

Now, you can select the context menu of the pointer to add or remove pointer segments. Note that after adding a third segment, the context menu 'Add Pointer Segment' will no longer be displayed.

Sometimes a segment will be added but the additional grabber will not be displayed after the page is automatically refreshed; thus giving the impression that pointer's line is not more than one segment. You can enable the grabbers by simply selecting any segment of the pointer.

screenshot - 25_08_2018 04_26_55

Position the segment joint by clicking on and dragging the grabber (the black square), to your desired location.

screenshot - 25_08_2018 04_27_25

Note that it is not necessary to spend time aligning a segment straight. LPub3D will automatically align the segment points along the closest axes . So if the segment's y1 and y2 axes are closer than the x1 and x2 axes, LPub3D will perfectly align the segment vertically (along the y axes) of the point under the cursor.

screenshot - 25_08_2018 04_29_07
To edit segments on a Callout pointer, use the Callout context menu and select the desired edit option.

screenshot - 26_08_2018 16_16_03

Lastly, while it is possible to directly add pointer segment meta commands to the LDraw model file, this activity is not practical because accurately defining segment and tip points is virtually impossible. So it goes without saying that multi-segment pointers should be applied using their respective context menus

For reference, here is a sample meta command for a multi-segment callout pointer:

0 !LPUB CALLOUT POINTER RIGHT 78.000 362.508 -144.713 208.000 78.000 362.508 78.000 362.000 0.000 0 2

And a sample for a page pointer

0 !LPUB PAGE_POINTER POINTER TOP_RIGHT -429.000 -900.000 -15.000 15.000 -218.000 15.000 -218.538 -531.901 0 3 BASE_BOTTOM


@trevorsandy trevorsandy added this to DONE in LPub3D Maintenance via automation Aug 26, 2018

@trevorsandy trevorsandy changed the title [Feature] Add multi-segment page, divider and callout pointers [Feature] Add multi-segment page, and callout pointers Sep 3, 2018

@trevorsandy trevorsandy moved this from DONE to DEPLOYED in LPub3D Maintenance Sep 6, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment