Package kiyut.sketsa.tool

## Class PathModifier

- java.lang.Object
- - kiyut.sketsa.tool.PathModifier

-     public class PathModifier
      extends Object

  PathModifier provided several methods to manipulate path. Things to refactor, is this class need to be static class ?
  Author:
    Kiyut

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `PathModifier()` | Creates a new instance of PathSimplify

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `add​(VectorCanvas canvas)` | CAG (Constructive Area Geometry) Union operation for the currently selected objects on the canvas.
    `void` | `breakApart​(VectorCanvas canvas)` | break apart the currently selected object on the canvas into several PathElement
    `void` | `combine​(VectorCanvas canvas)` | combine the currently selected objects on the canvas into one
    `void` | `convertToPath​(VectorCanvas canvas)` | Deprecated. replaced with `objectToPath(kiyut.sketsa.canvas.VectorCanvas)`
    `void` | `exclusiveOr​(VectorCanvas canvas)` | CAG (Constructive Area Geometry) exclusiveOr operation for the currently selected objects on the canvas minus their intersection.
    `void` | `intersect​(VectorCanvas canvas)` | CAG (Constructive Area Geometry) Intersect operation for the currently selected objects on the canvas
    `void` | `objectToPath​(VectorCanvas canvas)` | Convert the currently selected shapes in VectorCanvas into SVG Path element
    `void` | `strokeToPath​(VectorCanvas canvas)` | Convert the currently selected shapes stroke in VectorCanvas into SVG Path element
    `void` | `subtract​(VectorCanvas canvas)` | CAG (Constructive Area Geometry) Subtracts operation for the currently selected objects on the canvas.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### PathModifier

          public PathModifier()

      Creates a new instance of PathSimplify

  - ### Method Detail

    - #### convertToPath

          @Deprecated
          public void convertToPath​(VectorCanvas canvas)

      Deprecated.
      replaced with `objectToPath(kiyut.sketsa.canvas.VectorCanvas)`
      Convert the currently selected shapes in VectorCanvas into SVG Path element
      Parameters:
        `canvas` - the `VectorCanvas`

    - #### objectToPath

          public void objectToPath​(VectorCanvas canvas)

      Convert the currently selected shapes in VectorCanvas into SVG Path element
      Parameters:
        `canvas` - the `VectorCanvas`

    - #### strokeToPath

          public void strokeToPath​(VectorCanvas canvas)

      Convert the currently selected shapes stroke in VectorCanvas into SVG Path element
      Parameters:
        `canvas` - the `VectorCanvas`

    - #### combine

          public void combine​(VectorCanvas canvas)

      combine the currently selected objects on the canvas into one
      Parameters:
        `canvas` - the `VectorCanvas`
      See Also:
        `breakApart(VectorCanvas)`

    - #### breakApart

          public void breakApart​(VectorCanvas canvas)

      break apart the currently selected object on the canvas into several PathElement
      Parameters:
        `canvas` - the `VectorCanvas`
      See Also:
        `combine(VectorCanvas)`

    - #### add

          public void add​(VectorCanvas canvas)

      CAG (Constructive Area Geometry) Union operation for the currently selected objects on the canvas. Addition is achieved through union.
      Parameters:
        `canvas` - the `VectorCanvas`
      See Also:
        `subtract(VectorCanvas)`, `intersect(VectorCanvas)`, `exclusiveOr(VectorCanvas)`

    - #### subtract

          public void subtract​(VectorCanvas canvas)

      CAG (Constructive Area Geometry) Subtracts operation for the currently selected objects on the canvas.
      Parameters:
        `canvas` - the `VectorCanvas`
      See Also:
        `add(VectorCanvas)`, `intersect(VectorCanvas)`, `exclusiveOr(VectorCanvas)`

    - #### intersect

          public void intersect​(VectorCanvas canvas)

      CAG (Constructive Area Geometry) Intersect operation for the currently selected objects on the canvas
      Parameters:
        `canvas` - the `VectorCanvas`
      See Also:
        `add(VectorCanvas)`, `subtract(VectorCanvas)`, `exclusiveOr(VectorCanvas)`

    - #### exclusiveOr

          public void exclusiveOr​(VectorCanvas canvas)

      CAG (Constructive Area Geometry) exclusiveOr operation for the currently selected objects on the canvas minus their intersection.
      Parameters:
        `canvas` - the `VectorCanvas`
      See Also:
        `add(VectorCanvas)`, `subtract(VectorCanvas)`, `intersect(VectorCanvas)`