diagrams-lib-1.3.0.8: Embedded domain-specific language for declarative graphics

Copyright | (c) 2013 diagrams-lib team (see LICENSE)
License | BSD-style (see LICENSE)
Maintainer | diagrams-discuss@googlegroups.com
Safe Haskell | None
Language | Haskell2010

Diagrams.TwoD.Arrowheads

Contents

- Arrowheads
  - Standard arrowheads
  - Configurable arrowheads
- Arrow tails
  - Standard arrow tails
  - Configurable arrow tails
- Internals

Description

Standard arrowheads and tails. Each arrowhead or tail is designed to be drawn filled, with a line width of 0, and is normalized to fit inside a circle of diameter 1.

Synopsis

- tri :: RealFloat n => ArrowHT n
- dart :: RealFloat n => ArrowHT n
- halfDart :: RealFloat n => ArrowHT n
- spike :: RealFloat n => ArrowHT n
- thorn :: RealFloat n => ArrowHT n
- lineHead :: RealFloat n => ArrowHT n
- noHead :: (Floating n, Ord n) => ArrowHT n
- arrowheadTriangle :: RealFloat n => Angle n -> ArrowHT n
- arrowheadDart :: RealFloat n => Angle n -> ArrowHT n
- arrowheadHalfDart :: RealFloat n => Angle n -> ArrowHT n
- arrowheadSpike :: RealFloat n => Angle n -> ArrowHT n
- arrowheadThorn :: RealFloat n => Angle n -> ArrowHT n
- tri' :: RealFloat n => ArrowHT n
- dart' :: RealFloat n => ArrowHT n
- halfDart' :: RealFloat n => ArrowHT n
- spike' :: RealFloat n => ArrowHT n
- thorn' :: RealFloat n => ArrowHT n
- lineTail :: RealFloat n => ArrowHT n
- noTail :: OrderedField n => ArrowHT n
- quill :: (Floating n, Ord n) => ArrowHT n
- block :: RealFloat n => ArrowHT n
- arrowtailQuill :: OrderedField n => Angle n -> ArrowHT n
- arrowtailBlock :: forall n. RealFloat n => Angle n -> ArrowHT n
- type ArrowHT n = n -> n -> (Path V2 n, Path V2 n)

# Arrowheads

## Standard arrowheads

tri :: RealFloat n => ArrowHT n Source

dart :: RealFloat n => ArrowHT n Source

halfDart :: RealFloat n => ArrowHT n Source

spike :: RealFloat n => ArrowHT n Source

thorn :: RealFloat n => ArrowHT n Source

lineHead :: RealFloat n => ArrowHT n Source

A line the same width as the shaft.

noHead :: (Floating n, Ord n) => ArrowHT n Source

## Configurable arrowheads

Creates arrowheads of the same shape as the standard heads but where the angle parameter is used to specify the angle to the top left point of the arrowhead.

arrowheadTriangle :: RealFloat n => Angle n -> ArrowHT n Source

Isoceles triangle style. The above example specifies an angle of `2/5 Turn`.

arrowheadDart :: RealFloat n => Angle n -> ArrowHT n Source

Isoceles triangle with linear concave base. Inkscape type 1 - dart like.

arrowheadHalfDart :: RealFloat n => Angle n -> ArrowHT n Source

Top half of an `arrowheadDart`.

arrowheadSpike :: RealFloat n => Angle n -> ArrowHT n Source

Isoceles triangle with curved concave base. Inkscape type 2.

arrowheadThorn :: RealFloat n => Angle n -> ArrowHT n Source

Curved sides, linear concave base. Illustrator CS5 #3

# Arrow tails

## Standard arrow tails

tri' :: RealFloat n => ArrowHT n Source

dart' :: RealFloat n => ArrowHT n Source

halfDart' :: RealFloat n => ArrowHT n Source

spike' :: RealFloat n => ArrowHT n Source

thorn' :: RealFloat n => ArrowHT n Source

lineTail :: RealFloat n => ArrowHT n Source

A line the same width as the shaft.

noTail :: OrderedField n => ArrowHT n Source

quill :: (Floating n, Ord n) => ArrowHT n Source

block :: RealFloat n => ArrowHT n Source

## Configurable arrow tails

arrowtailQuill :: OrderedField n => Angle n -> ArrowHT n Source

The angle is where the top left corner intersects the circle.

arrowtailBlock :: forall n. RealFloat n => Angle n -> ArrowHT n Source

# Internals

type ArrowHT n = n -> n -> (Path V2 n, Path V2 n) Source