Beta 1 of DIMaster v2.0 is ready for download.
Please remember it is still work in progress and might be buggy.
Written in 3ds Max 9, but tested briefly in 3ds Max 7 and 8 in DirectX mode.
Documentation is still not available, please play with it to figure out how to use.
NOTES:
*Each dimension object consists of 3 types of elements - two or three point helpers, a custom plugin object drawing the lines and a regular text object with mesh_select for meshing on top. These objects work as a system controlled by the custom plugin. The helpers control the placement and functions of that plugin, and the text is being placed and updated by the plugin. Deleting any of these elements will make the system to stop working, but there should be no errors. If there are, they are bugs.
*The main helper object is the Red point with the box. It controls the placement of the whole system - moving or rotating it will cause the whole system to move/rotate.
*The black custom element (line, angle, note line) contains all the controls that show up in the Command Panel. If you want to change parameters WHILE moving the helpers around, be sure to PIN DOWN the stack so you can select other objects while the custom plugin is shown in the Command Panel.
*In the case of the DIMline, the up vector can be specified as the X, Y or Z (positive or negative) of the main (red) point helper. You can change or flip the axis or flip the text horizontally or vertically if the current view shows the system from the back side. While DirectX will show the back side of objects in black, they will still render in the assigned color. To rotate the DIMline at any angle, simply rotate the red helper.
*In the case of the DIMangle and DIMnote, the “up vector” is the normal of the plane defined by the 3 point helpers.
*In the case of the DIMnote the blue point is linked to the green point and the green to the red, so you can manipulate the chain at any level you like.
Remember that the text objects displayed by DIMaster are regular text shapes, so you can change the font in the base object as usual. I added tools to propagate the font of the current object to all visible objects of the same type in the scene, and to pick the font from any other DIMaster object. You can assign materials as you want, but the objects will have default materials assigned to them and instanced accross all DIMobject. so changing the parameters of one will change all. If you replace the material manually, the change will be local.
If you want to give the scene to somebody who has not installed DIMaster v2 yet, you can collapse all DIMaster geometry objects to editable meshes. Of course, this will remove any interactivity and freeze the dimensions, but the scene could be opened on any machine after that.
I left all parameters animatable at this point, even if they don’t make much sense to animate in most cases.
I also added tools to define the angle and the length of the second arm of the angle as well as the length of the dimension line interactively - you could snap to the helper at the end to construct your own objects at specified distances/angles.