Axis3d
ABSTRACT
Generates a three-dimensional axis mesh with ticks, labels, and units along the X, Y, and Z axes on a specified plane.
REMARK
In my opninion, using a left handed coordinate system looks better in 3D than a right handed one, so I generally recommend setting the pos_y_axis to be {0,-1,0}
PARAMETERS
center | A 3-vector indicating the center coordinates of the axis |
center | A 3-vector indicating the center coordinates of the axis |
pos_x_axis | A 3-vector indicating the direction of the positive X-axis |
pos_y_axis | A 3-vector indicating the direction of the positive Y-axis |
pos_z_axis | A 3-vector indicating the direction of the positive Z-axis |
x_unit | Unit for the X-axis |
x_rad | Radius of the X-axis |
x_unit | Unit for the X-axis |
x_min | Minimum value for the X-axis (should be <= 0) |
x_max | Maximum value for the X-axis (should be >= 0) |
x_unit | Unit for the X-axis |
x_min | Minimum value for the X-axis (should be <= 0) |
x_max | Maximum value for the X-axis (should be >= 0) |
x_tick_step | Step size for ticks on the X-axis (measured in axis coordinates) |
x_label | A textual label for the X-axis (displayed next to the end of the positive X-axis) |
x_label | A textual label for the X-axis (displayed next to the end of the positive X-axis) |
x_label_rate | Rate for displaying X-axis labels (numeric label assigned every x_label_rate ticks) |
y_unit | Unit for the Y-axis |
y_rad | Radius of the Y-axis |
y_unit | Unit for the Y-axis |
y_min | Minimum value for the Y-axis (should be <= 0) |
y_max | Maximum value for the Y-axis (should be >= 0) |
y_unit | Unit for the Y-axis |
y_min | Minimum value for the Y-axis (should be <= 0) |
y_max | Maximum value for the Y-axis (should be >= 0) |
y_tick_step | Step size for ticks on the Y-axis (measured in axis coordinates) |
y_label | A textual label for the Y-axis (displayed next to the end of the positive Y-axis) |
y_label | A textual label for the Y-axis (displayed next to the end of the positive Y-axis) |
y_label_rate | Rate for displaying Y-axis labels (numeric label assigned every y_label_rate ticks) |
z_unit | Unit for the Z-axis |
z_rad | Radius of the Z-axis |
z_unit | Unit for the Z-axis |
z_min | Minimum value for the Z-axis (should be <= 0) |
z_max | Maximum value for the Z-axis (should be >= 0) |
z_unit | Unit for the Z-axis |
z_min | Minimum value for the Z-axis (should be <= 0) |
z_max | Maximum value for the Z-axis (should be >= 0) |
z_tick_step | Step size for ticks on the Z-axis (measured in axis coordinates) |
z_label | A textual label for the Z-axis (displayed next to the end of the positive Z-axis) |
z_label | A textual label for the Z-axis (displayed next to the end of the positive Z-axis) |
z_label_rate | Rate for displaying Z-axis labels (numeric label assigned every z_label_rate ticks) |
off | Specifies to keep the grid off (and instead display ticks) |
on | Specifies to keep the grid on (and not display ticks) |
tag | A vector of numbers used as the axis's tag |
color | A 4-vector representing the color for rendering the axis |
RETURN
A mesh-tree according to the specified specifications
DECLARATION
func Axis3d([plane] {[main] {center}, [plane] {center, pos_x_axis, pos_y_axis, pos_z_axis}}, [x] {[main] {x_unit, x_rad}, [interval] {x_unit, x_min, x_max}, [step] {x_unit, x_min, x_max, x_tick_step}}, [x_labels] {[auto] {x_label}, [step] {x_label, x_label_rate}}, [y] {[main] {y_unit, y_rad}, [interval] {y_unit, y_min, y_max}, [step] {y_unit, y_min, y_max, y_tick_step}}, [y_labels] {[auto] {y_label}, [step] {y_label, y_label_rate}}, [z] {[main] {z_unit, z_rad}, [interval] {z_unit, z_min, z_max}, [step] {z_unit, z_min, z_max, z_tick_step}}, [z_labels] {[auto] {z_label}, [step] {z_label, z_label_rate}}, [grid] {[off] {}, [on] {}}, tag, color)