🛠️
ezEdits Wiki
English
English
  • ezEdits Docs
  • Getting Started
    • Installing
    • Permissions
  • Palettes
    • Palettes Explained
    • Default Palettes
    • Palette Commands
  • Noise
    • Noise Explained
    • Noise Commands
  • Masks & Patterns
    • Masks
    • Patterns
  • Brushes & Tools
    • Brushes
      • Palette Shift Brush
      • Palette Gradient Brushes
      • Placement Brushes
    • Superwand
  • Commands
    • Deformation
    • Flowfields
    • Noisegen
    • Region
    • Placement
      • Available Structures
      • Primary+Secondary Alignment
      • Placement Parameters
      • Scatter Parameters
      • Array Parameters
    • Selections
    • Shapes
    • Smoothing
    • Spline
      • Common Parameters
      • 2D Spline Shapes
      • 3D Spline Shapes
      • Advanced Spline Shapes
    • Stained Glass
    • Surface
    • Survival
    • Texturing
Powered by GitBook
On this page
  • Syntax
  • List of <shape>s
  • //ezspline 3d`` Beads (Be)
  • //ezspline 3d`` Cubes (Cu)
  • //ezspline 3d`` Chainlink (Ch)
  • //ezspline 3d`` Fishnet (Fi)
  • //ezspline 3d`` Oscillate (Os)
  • //ezspline 3d`` Rings (Ri)
  • //ezspline 3d`` Scales (Sc)
  • //ezspline 3d`` Noodles (No)
  1. Commands
  2. Spline

3D Spline Shapes

Previous2D Spline ShapesNextAdvanced Spline Shapes

Last updated 25 days ago

This page covers the //ezspline 3d subcommand which feature 3D spline shapes embedded along the spline path.


Syntax

//ezspline 3d <shape> <pattern>

  • <shape> : Choose one from the list below.

  • <pattern>: Specifies the block(s) the spline is made out of, e.g. clay.

The remaining arguments are outlined on the subpage.


List of <shape>s


//ezspline 3d`` Beads (Be)

Bead spline

Generates a beads-shaped spline along the selected positions.

  • Beads shape has no parameters.

Example:

//ezsp 3d`` Beads ``clay 10


//ezspline 3d`` Cubes (Cu)

Cubes Spline

Generates a chainlink-shaped spline along the selected positions.

  • [Gap:<value>] (G) (Default: 0.5):

    • Sets the gap between cubes

Examples:

//ezsp 3d`` Cubes ``clay 7

Default gap is 0.5

//ezsp 3d`` Cubes(Gap:0.0) ``clay 7

//ezsp 3d`` Cubes(Gap:1.0) ``clay 7

//ezsp 3d`` Cu(G:2.0) ``clay 7


//ezspline 3d`` Chainlink (Ch)

Chain-Link Spline

Generates a highly customisable chainlink-shaped spline along the selected positions.

  • [Extrusion:<value>] (E) (Default: 0.2):

    • The amount to length to add for each individual link along the chain.

  • [Thickness:<value>] (T) (Default: 1.0):

    • The inner/minor radius of each link.

  • [Gap:<value>] (G) (Default: 0.0):

    • Amount to offset each link by, adjusting the overlap of the links in the chain.

  • [MajorExponent:<value>] (M) (Default: 3.0):

    • The exponent defining the outer shape of an individual chain link.

  • [MinorExponent:<value>] (N) (Default: 3.0):

    • The exponent defining the shape of the cross-section of an individual chain link.

  • [Place:<value>] (P) (Default: "BOTH"):

    • Choose between "FIRST", "SECOND", or "BOTH" to place only half of the chain links or both.

Examples:

//ezsp 3d`` Chainlink ``clay 10

//ezsp 3d`` Chainlink(M:99,N:99,Extrusion:0.6) ``clay 10

  • M:99 is responsible for making the chains appear rectangular (instead of elliptical).

  • N:99 is responsible for making the square chain link's cross-section square-shaped.

//ezsp 3d`` Chainlink(M:1,N:1,E:0.7,G:-0.2,T:1.2) ``clay 11

//ezsp 3d`` Chainlink(M:2,N:2,E:0,G:1) ``clay 11

//ezspline 3d`` Chainlink(P:FIRST) red_terracotta ``10

//ezspline 3d`` Chainlink(P:SECOND) blue_wool ``10


//ezspline 3d`` Fishnet (Fi)

Fishnet Spline

Generates a fishnet-shaped spline along the selected positions.

  • [Spacing:<value>] (S) (Default: 1.0):

    • The distance between the strings of the net.

  • [Depth:<value>] (D) (Default: 0.2):

    • The depth of each string within the net. How much it protrudes towards the center of the spline.

  • [Width:<value>] (W) (Default: 0.2):

    • The width of each string.

Examples:

//ezspline 3d`` Fishnet ``clay 10

//ezsp 3d`` Fishnet(Spacing:2.0) ``clay 10

//ezsp 3d`` Fishnet(S:2.0,Depth:1.0,Width:0.3) ``clay 10

//ezsp 3d`` Fi(S:2.0,D:0.5,W:0.5) ``clay 10


//ezspline 3d`` Oscillate (Os)

Oscillation Spline

Generates a spline with an oscillating thickness along the selected positions.

  • [Depth:<value>] (D) (Default: 0.2):

    • Specifies how many blocks deep the ridges cut into the surface of the spline.

  • [Interval:<value>] (I) (Default: 0.5):

    • Specifies the distance between each ridge.

Examples:

//ezspline 3d`` Oscillate ``clay 10

Uses default values Depth:0.2 and Interval:0.5

//ezsp 3d`` Oscillate(Depth:0.6) ``clay 10

//ezsp 3d`` Oscillate(Depth:0.6,Interval:1.5) ``clay 10

//ezsp 3d`` Oscillate(Depth:0.2,Interval:1.5) ``clay 10

Can be abbreviated to Os(D:0.2,I:1.5)


//ezspline 3d`` Rings (Ri)

Rings Spline

Generates a highly customisable spline of repeating rings/cubes/spheres along the spline path.

  • [Extrusion:<value>] (E) (Default: 0.2):

    • The amount to length to add for each individual link along the chain.

  • [Thickness:<value>] (T) (Default: 0.15):

    • Thickness of each ring. Smaller values lead to a larger hole in the middle. 1.0 results in a (super-)sphere.

  • [Gap:<value>] (G) (Default: 0.0):

    • Relative gap size between each torus. 0 means there is no gap, all toruses come right after another. 1 means the distance is exactly the size of one torus. Negative values result in overlapping.

  • [MajorExponent:<value>] (M) (Default: 2.0):

    • The exponent defining the outer shape of an individual torus.

  • [MinorExponent:<value>] (N) (Default: 2.0):

    • The exponent defining the shape of the cross-section of an individual torus.


//ezspline 3d`` Scales (Sc)

Scales Spline

Generates a highly customisable spline with a scales-like three-dimensional texture on it.

  • Columns (C). (Default: 8):

    • Sets how many tiles should fit per "layer".

  • HorizontalOffset (H). Default: 1.05):

    • Determines how far apart each tile is sideways.

  • VerticalOffset (V). (Default: 1.2):

    • Determines how far apart each tile is along the spline path direction.

  • MajorExponent (M). (Default: 1.4):

    • The exponent defining the shape of the tile.

  • MinorExponent (N). (Default: 14.0):

    • The exponent defining the shape of the cross-section of each tile.

  • Angle (A). (Default: 14.0):

    • Defines the orientation of each tile.

  • DepthMultiplier (D). (Default: 1.0):

    • Adjusts how deep the ridges between the tiles go.

    • Values larger than 1 carve out blocks.

    • Value less than 1 fill with more blocks.

Example:

//ezsp 3d`` Sc(c:8,d:1.2) ``clay 22,9

//ezt ambient clay ##EnchantedBright


//ezspline 3d`` Noodles (No)

Noodles Spline

Experimental spline which generates a set of twisted, intertwining, non-intersecting sub-splines.

  • [Amount:<value>] (A) (Default: 12):

    • The number of intertwining lines.

  • [Tangle:<value>] (T) (Default: 3.0):

    • Determines how much the noodles intertwine and move around. Low values result in fully straight noodles. High values result in more chaotic paths.

  • [Density:<value>] (D) (Default: 70%):

    • Indirectly determines the width of the noodles by specifying how much the cross-section should be filled with material vs just air. 100% makes the noodles as thick as they can be so that the given amount of noodles can still fit into the spline radius. Thus, large values do not leave the noodles much space to move which gives rise to glitchy paths. Small values leave large air gaps between the noodles.

    • Example: Cross section of the spline at 100%

    • Example Cross section of the spline at 50% (same number of noodles)

    • The smaller the density the smaller the individual radius of the noodles. Difference to the width parameter: The determined radius is the one used for collision detection. The width parameter has no influence on the collision between noodles.

  • [Width:<value>] (W) (Default: 0.8):

    • Relative width multiplier for all noodles independent of the noodle collision detection. Noodle collisions are calculated at width 1.0. This parameter defines the width at which the noodles are rendered/placed. This means values larger than one result in overlapping noodles, clipping into each other, meanwhile, values smaller than one ensure an air gap between all noodles.

  • [Frequency:<value>] (F) (Default: 0.5):

    • Sets the frequency value of the underlying noise responsible for the random perturbations. Higher values result in jittering.

  • [Seed:<value>] (S) (Default: -1 (random)):

    • Sets the seed of the underlying noise responsible for the random perturbations.


//ezsp 3d Beads

This shape can also be achieved with the shape using the following set of parameters: Rings(E:0,T:1,G:0,M:2,N:2)

//ezsp 3d Cubes([Gap:<value>])

(!) We provide an interactive 3D plot to play around with all parameters:

//ezsp 3d Chainlink([Extrusion:<value>],[Thickness:<value>],[Gap:<value>],[MajorExponent:<value>],[MinorExponent:<value>],[Place:<value>])

(!) We provide an interactive 3D plot to play around with all parameters (it's very neat):

//ezsp 3d Fishnet([Spacing:<value>],[Depth:<value>],[Width:<value>])

(!) We provide an interactive 3D plot to play around with all parameters (it's very neat):

//ezsp 3d Oscillate([Depth:<value>],[Interval:<value>])

(!) We provide an interactive 3D plot to play around with all parameters:

//ezsp Rings([Extrusion:<value>],[Thickness:<value>],[Gap:<value>],[MajorExponent:<value>],[MinorExponent:<value>])

(!) We provide an interactive 3D plot to play around with all parameters (it's very neat):

//ezsp Scales([Scale:<value>],[HorizontalOffset:<value>],[VerticalOffset:<value>],[MajorExponent:<value>],[MinorExponent:<value>],[Angle:<value>],[DepthMultiplier:<value>])

(!) We provide an interactive 3D plot to play around with all parameters (it's very neat):

//ezsp Noodles([Amount:<value>],[Density:<value>],[Frequency:<value>],[Tangle:<value>],[Width:<value>],[Seed:<value>])

<pattern>
<radii>
[-s <stretch>]
[-t <angle>]
[-p <kbParameters>]
[-q <quality>]
[-n <normalMode>]
[-h]
Rings
<pattern>
<radii>
[-s <stretch>]
[-t <angle>]
[-p <kbParameters>]
[-q <quality>]
[-n <normalMode>]
[-h]
https://www.desmos.com/3d/xbmia9wiwo
<pattern>
<radii>
[-s <stretch>]
[-t <angle>]
[-p <kbParameters>]
[-q <quality>]
[-n <normalMode>]
[-h]
https://www.desmos.com/3d/yvrsv605mf
<pattern>
<radii>
[-s <stretch>]
[-t <angle>]
[-p <kbParameters>]
[-q <quality>]
[-n <normalMode>]
[-h]
https://www.desmos.com/3d/eww8fzzyuj
<pattern>
<radii>
[-s <stretch>]
[-t <angle>]
[-p <kbParameters>]
[-q <quality>]
[-n <normalMode>]
[-h]
https://www.desmos.com/3d/xilpdwcnom
<pattern>
<radii>
[-s <stretch>]
[-t <angle>]
[-p <kbParameters>]
[-q <quality>]
[-n <normalMode>]
[-h]
https://www.desmos.com/3d/eukcghnohc
<pattern>
<radii>
[-s <stretch>]
[-t <angle>]
[-p <kbParameters>]
[-q <quality>]
[-n <normalMode>]
[-h]
https://www.desmos.com/3d/ymmixtkdgf
<pattern>
<radii>
[-s <stretch>]
[-t <angle>]
[-p <kbParameters>]
[-q <quality>]
[-n <normalMode>]
[-h]
<radii>
[-s <stretch>]
[-t <angle>]
[-p <kbParameters>]
[-q <quality>]
[-n <normalMode>]
[-h]
Common Parameters
Cover

Beads (Be)

Cover

Cubes (Cu)

Cover

Oscillate (Os)

Cover

Fishnet (Fi)

Cover

Chainlink (Ch)

Cover

Rings (Ri)

Cover

Scales (Sc)

Cover

Noodles (No)