Skip to content

3D camera, interaction, and solid export

The 3D canvas uses a perspective camera and WebGL, but camera motion never changes world coordinates. Orbit, zoom, and reset alter only the view, not Eidolang objects.

Camera controls

  • Drag empty canvas to orbit around the current target.
  • Wheel or pinch to zoom near the pointer.
  • Click the corner orientation axes to reveal Reset view; it restores the origin target and initial distance.
  • The inset shows world x/y/z, with z up.

Camera position and target persist as local view state when switching figures and return on remount; they are not written to .eido. The current project's 3D minimum/maximum distance clamps zoom.

Select and drag 3D points

With Pointer, click objects to select. Picking prioritizes points, then line-like objects, then surfaces/solids, so a point inside a translucent sphere remains reachable.

  • free point3 values drag on a camera-facing plane;
  • bound points move along segment3/line3/ray3;
  • sphere-bound points move on the sphere;
  • derived points cannot drag directly.

With auto-dock, a free point snaps to a point coordinate or is rebound to a nearby linear carrier or sphere. The candidate highlights before release.

3D drawing tools

Point3 places a point on world z = 0; pressing and dragging vertically creates non-zero z. Segment3, Sphere, Cylinder, Cone, and other tools construct from existing/new control points with dashed or wireframe previews.

Planes, boxes, prisms, pyramids, and complex curves/surfaces are usually created in Eidolang. Start by modifying a 3D example.

Adaptive grid and sizing

Grid step follows camera distance on a 1-2-5 ladder, with the current unit in a corner legend. Infinite lines and planes expand with view distance. Points, intersection markers, and labels remain approximately screen-constant for reliable selection.

3D PNG

PNG reads the WebGL render:

  • Current view preserves composition;
  • Fit content keeps view direction but temporarily centers and backs away to contain the model;
  • 1×/2×/4× raster scale is available;
  • the ground grid and orientation inset can be excluded;
  • 3D always renders a background and is not transparent.

3D SVG

3D SVG is not a canvas screenshot. Eidograph regenerates a wireframe/contour projection from the evaluated model and camera: lines and curves become projected polylines, solids output edges and analytic silhouettes, and surfaces output iso-grid lines with translucent fills.

There is currently no hidden-line removal. Approximate depth ordering means complex overlap may differ from the solid WebGL image. SVG is suited to illustration and vector layout, not engineering projection.

3D GIF

GIF can use the script animate/stage timeline or automatic camera orbit. Fit content creates a temporary export camera without changing the saved interactive camera. Lower frame rate, raster scale, duration, or surface samples if rendering is too large or slow.