wumpus-drawing-0.4.0: High-level drawing objects built on Wumpus-Basic.

PortabilityGHC
Stabilityhighly unstable
MaintainerStephen Tetley <stephen.tetley@gmail.com>

Wumpus.Drawing.Connectors.ConnectorPaths

Description

Primitive connectors

Synopsis

Documentation

connline :: (Real u, Floating u, InterpretUnit u) => Connector uSource

Straight line connector.

connarc :: (Real u, Floating u, Ord u, InterpretUnit u, Tolerance u) => Connector uSource

Form an arc connector.

If the conn_arc_angle in the Drawing context is positive the arc will be formed above the straight line joining the points. If the angle is negative it will be drawn below.

The notion of above is respective to the line direction, of course.

connhdiagh :: (Real u, Floating u, Tolerance u, InterpretUnit u) => Connector uSource

Horizontal-diagonal-horizontal connector.

      --@
     /
  o--

Horizontal arms are drawn from the start and end points, a diagonal segment joins the arms.

connvdiagv :: (Real u, Floating u, Tolerance u, InterpretUnit u) => Connector uSource

Vertical-diagonal-vertical connector.

  @
  |
   \
    |
    o

Vertical arms are drawn from the start and end points, a diagonal segment joins the arms.

conndiagh :: (Real u, Floating u, Tolerance u, InterpretUnit u) => Connector uSource

Diagonal-horizontal connector.

    --@
   /
  o

Restricted variant of hconndiag - a diagonal segment is drawn from the start point joining a horizontal arm drawn from the end point

conndiagv :: (Real u, Floating u, Tolerance u, InterpretUnit u) => Connector uSource

Diagonal-vertical connector.

    @
    |
   /
  o

Restricted variant of vconndiag - a diagonal segment is drawn from the start point joining a vertical arm drawn from the end point.

connhdiag :: (Real u, Floating u, Tolerance u, InterpretUnit u) => Connector uSource

Horizontal-diagonal connector.

      @
     /
  o--

Restricted variant of hconndiag - a horizontal arm is drawn from the start point joining a diagonal segment drawn from the end point.

connvdiag :: (Real u, Floating u, Tolerance u, InterpretUnit u) => Connector uSource

Vertical-diagonal connector.

    @
   /
  |
  o

Restricted variant of vconndiag - a horizontal arm is drawn from the start point joining a vertical segment drawn from the end point.

connabar :: (Real u, Floating u, Tolerance u, InterpretUnit u) => Connector uSource

Bar connector.

  ,----, 
  |    |
  o    @  

The bar is drawn above the points.

connbbar :: (Real u, Floating u, Tolerance u, InterpretUnit u) => Connector uSource

Bar connector.

  o    @ 
  |    |
  '----'  

The bar is drawn below the points.

connaright :: (Real u, Floating u, Tolerance u, InterpretUnit u) => Connector uSource

Right angle connector.

  ,----@ 
  | 
  o   

The bar is drawn above the points.

connbright :: (Real u, Floating u, Tolerance u, InterpretUnit u) => Connector uSource

Right angle connector.

       @ 
       |
  o----'  

The bar is drawn below the points.

connhrr :: (Real u, Floating u, Tolerance u, InterpretUnit u) => Connector uSource

Connector with two horizontal segements and a joining vertical segment.

       ,--@
       |
  o----'  

The length of the first horizontal segment is the source arm length. The length of the final segment is the remaing horizontal distance.

connrrh :: (Real u, Floating u, Tolerance u, InterpretUnit u) => Connector uSource

Connector with two horizontal segements and a joining vertical segment.

     ,----@
     |
  o--'  

The length of the final horizontal segment is the distination arm length. The length of the initial segment is the remaining horizontal distance.

connvrr :: (Real u, Floating u, Tolerance u, InterpretUnit u) => Connector uSource

Connector with two right angles...

       @
       |
  ,----'
  |
  o  

connrrv :: (Real u, Floating u, Tolerance u, InterpretUnit u) => Connector uSource

Connector with two right angles...

       @
       |
  ,----'
  |
  o  

connaloop :: (Real u, Floating u, Tolerance u, InterpretUnit u) => Connector uSource

Loop connector.

  ,---------, 
  |         |
  '-o    @--'

The loop is drawn above the points.

connbloop :: (Real u, Floating u, Tolerance u, InterpretUnit u) => Connector uSource

Loop connector.

  ,-o    @--, 
  |         |
  '---------'

The loop is drawn above the points.

connhbezier :: (Real u, Floating u, InterpretUnit u, Tolerance u) => Connector uSource

Bezier curve connector - the control points are positioned horizontally respective to the source and dest.

  *--@ 
    .  
   . 
  o--*  

Note - the source and dest arm lengths are doubled, generally this produces nicer curves.

connvbezier :: (Real u, Floating u, InterpretUnit u, Tolerance u) => Connector uSource

Bezier curve connector - the control points are positioned vertically respective to the source and dest.

        @ 
       .|  
  *  .  *
  |.
  o

Note - the source and dest arm lengths are doubled, generally this produces nicer curves.