packages feed

diagrams-core 1.1.0.3 → 1.2

raw patch · 19 files changed

+501/−268 lines, 19 filesdep ~lensdep ~semigroupsPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: lens, semigroups

API changes (from Hackage documentation)

- Diagrams.Core: class Transformable p => IsPrim p where transformWithFreeze t1 t2 = transform (t1 <> t2)
- Diagrams.Core: class Backend b v => MultiBackend b v
- Diagrams.Core: doRender :: Backend b v => b -> Options b v -> Render b v -> Result b v
- Diagrams.Core: freeze :: (HasLinearMap v, InnerSpace v, OrderedField (Scalar v), Semigroup m) => QDiagram b v m -> QDiagram b v m
- Diagrams.Core: nullPrim :: (HasLinearMap v, Typeable v, Monoid (Render b v)) => Prim b v
- Diagrams.Core: prims :: HasLinearMap v => QDiagram b v m -> [(Prim b v, (Split (Transformation v), Style v))]
- Diagrams.Core: renderData :: (Backend b v, Monoid' m) => b -> QDiagram b v m -> Render b v
- Diagrams.Core: renderDias :: (MultiBackend b v, InnerSpace v, OrderedField (Scalar v), Monoid' m) => b -> Options b v -> [QDiagram b v m] -> Result b v
- Diagrams.Core: transformWithFreeze :: IsPrim p => Transformation (V p) -> Transformation (V p) -> p -> p
- Diagrams.Core: withStyle :: Backend b v => b -> Style v -> Transformation v -> Render b v -> Render b v
- Diagrams.Core.Compile: RFrozenTr :: (Transformation v) -> RNode b v a
- Diagrams.Core.Types: RFrozenTr :: (Transformation v) -> RNode b v a
- Diagrams.Core.Types: class Transformable p => IsPrim p where transformWithFreeze t1 t2 = transform (t1 <> t2)
- Diagrams.Core.Types: class Backend b v => MultiBackend b v
- Diagrams.Core.Types: doRender :: Backend b v => b -> Options b v -> Render b v -> Result b v
- Diagrams.Core.Types: freeze :: (HasLinearMap v, InnerSpace v, OrderedField (Scalar v), Semigroup m) => QDiagram b v m -> QDiagram b v m
- Diagrams.Core.Types: instance (HasLinearMap v, Monoid (Render b v)) => Renderable (NullPrim v) b
- Diagrams.Core.Types: instance HasLinearMap v => IsPrim (NullPrim v)
- Diagrams.Core.Types: instance HasLinearMap v => IsPrim (Prim b v)
- Diagrams.Core.Types: instance HasLinearMap v => Transformable (NullPrim v)
- Diagrams.Core.Types: instance Typeable1 NullPrim
- Diagrams.Core.Types: instance Typeable3 QDiagram
- Diagrams.Core.Types: nullPrim :: (HasLinearMap v, Typeable v, Monoid (Render b v)) => Prim b v
- Diagrams.Core.Types: prims :: HasLinearMap v => QDiagram b v m -> [(Prim b v, (Split (Transformation v), Style v))]
- Diagrams.Core.Types: renderData :: (Backend b v, Monoid' m) => b -> QDiagram b v m -> Render b v
- Diagrams.Core.Types: renderDia :: (Backend b v, InnerSpace v, OrderedField (Scalar v), Monoid' m) => b -> Options b v -> QDiagram b v m -> Result b v
- Diagrams.Core.Types: renderDias :: (MultiBackend b v, InnerSpace v, OrderedField (Scalar v), Monoid' m) => b -> Options b v -> [QDiagram b v m] -> Result b v
- Diagrams.Core.Types: transformWithFreeze :: IsPrim p => Transformation (V p) -> Transformation (V p) -> p -> p
- Diagrams.Core.Types: withStyle :: Backend b v => b -> Style v -> Transformation v -> Render b v -> Render b v
+ Diagrams.Core: Global :: (Scalar v) -> Measure v
+ Diagrams.Core: Local :: (Scalar v) -> Measure v
+ Diagrams.Core: MaxM :: (Measure v) -> (Measure v) -> Measure v
+ Diagrams.Core: MinM :: (Measure v) -> (Measure v) -> Measure v
+ Diagrams.Core: NegateM :: (Measure v) -> Measure v
+ Diagrams.Core: Normalized :: (Scalar v) -> Measure v
+ Diagrams.Core: Output :: (Scalar v) -> Measure v
+ Diagrams.Core: PlusM :: (Measure v) -> (Measure v) -> Measure v
+ Diagrams.Core: ScaleM :: (Scalar v) -> (Measure v) -> Measure v
+ Diagrams.Core: ZeroM :: Measure v
+ Diagrams.Core: _relative :: AffineSpace (Point v) => Point v -> Iso' (Point v) v
+ Diagrams.Core: applyGTAttr :: (AttributeClass a, Data a, Transformable a, V a ~ V d, HasStyle d) => a -> d -> d
+ Diagrams.Core: atLeast :: Measure v -> Measure v -> Measure v
+ Diagrams.Core: atMost :: Measure v -> Measure v -> Measure v
+ Diagrams.Core: avgScale :: (HasLinearMap v, Floating (Scalar v)) => Transformation v -> Scalar v
+ Diagrams.Core: data Measure v
+ Diagrams.Core: dimension :: HasLinearMap (V a) => a -> Int
+ Diagrams.Core: dropTransl :: AdditiveGroup v => Transformation v -> Transformation v
+ Diagrams.Core: fromOutput :: Measure v -> Scalar v
+ Diagrams.Core: mkGTAttr :: (AttributeClass a, Data a, Transformable a, V a ~ v) => a -> Attribute v
+ Diagrams.Core: renderDiaT :: (Backend b v, HasLinearMap v, InnerSpace v, Data v, OrderedField (Scalar v), Data (Scalar v), Monoid' m) => b -> Options b v -> QDiagram b v m -> (Transformation v, Result b v)
+ Diagrams.Core: renderRTree :: Backend b v => b -> Options b v -> RTree b v Annotation -> Result b v
+ Diagrams.Core: toOutput :: (Data v, Data (Scalar v), Num (Scalar v), Ord (Scalar v), Fractional (Scalar v)) => Scalar v -> Scalar v -> Measure v -> Measure v
+ Diagrams.Core.Compile: renderDia :: (Backend b v, InnerSpace v, Data v, OrderedField (Scalar v), Data (Scalar v), Monoid' m) => b -> Options b v -> QDiagram b v m -> Result b v
+ Diagrams.Core.Compile: renderDiaT :: (Backend b v, HasLinearMap v, InnerSpace v, Data v, OrderedField (Scalar v), Data (Scalar v), Monoid' m) => b -> Options b v -> QDiagram b v m -> (Transformation v, Result b v)
+ Diagrams.Core.Compile: styleToOutput :: (Data v, Data (Scalar v), Num (Scalar v), Ord (Scalar v), Fractional (Scalar v)) => Scalar v -> Scalar v -> Style v -> Style v
+ Diagrams.Core.Compile: toOutput :: (Data v, Data (Scalar v), Num (Scalar v), Ord (Scalar v), Fractional (Scalar v)) => Scalar v -> Scalar v -> Measure v -> Measure v
+ Diagrams.Core.Envelope: extent :: Enveloped a => V a -> a -> Maybe (Scalar (V a), Scalar (V a))
+ Diagrams.Core.Points: _relative :: AffineSpace (Point v) => Point v -> Iso' (Point v) v
+ Diagrams.Core.Style: GTAttribute :: a -> Attribute v
+ Diagrams.Core.Style: applyGTAttr :: (AttributeClass a, Data a, Transformable a, V a ~ V d, HasStyle d) => a -> d -> d
+ Diagrams.Core.Style: gmapAttrs :: Typeable a => (a -> a) -> Style v -> Style v
+ Diagrams.Core.Style: gtAttrToStyle :: (AttributeClass a, Data a, Transformable a, V a ~ v) => a -> Style v
+ Diagrams.Core.Style: mkGTAttr :: (AttributeClass a, Data a, Transformable a, V a ~ v) => a -> Attribute v
+ Diagrams.Core.Transform: avgScale :: (HasLinearMap v, Floating (Scalar v)) => Transformation v -> Scalar v
+ Diagrams.Core.Transform: dimension :: HasLinearMap (V a) => a -> Int
+ Diagrams.Core.Transform: dropTransl :: AdditiveGroup v => Transformation v -> Transformation v
+ Diagrams.Core.Transform: listRep :: HasLinearMap v => v -> [Scalar v]
+ Diagrams.Core.Transform: matrixHomRep :: HasLinearMap v => Transformation v -> [[Scalar v]]
+ Diagrams.Core.Types: Global :: (Scalar v) -> Measure v
+ Diagrams.Core.Types: Local :: (Scalar v) -> Measure v
+ Diagrams.Core.Types: MaxM :: (Measure v) -> (Measure v) -> Measure v
+ Diagrams.Core.Types: MinM :: (Measure v) -> (Measure v) -> Measure v
+ Diagrams.Core.Types: NegateM :: (Measure v) -> Measure v
+ Diagrams.Core.Types: Normalized :: (Scalar v) -> Measure v
+ Diagrams.Core.Types: Output :: (Scalar v) -> Measure v
+ Diagrams.Core.Types: PlusM :: (Measure v) -> (Measure v) -> Measure v
+ Diagrams.Core.Types: ScaleM :: (Scalar v) -> (Measure v) -> Measure v
+ Diagrams.Core.Types: ZeroM :: Measure v
+ Diagrams.Core.Types: atLeast :: Measure v -> Measure v -> Measure v
+ Diagrams.Core.Types: atMost :: Measure v -> Measure v -> Measure v
+ Diagrams.Core.Types: data Measure v
+ Diagrams.Core.Types: fromOutput :: Measure v -> Scalar v
+ Diagrams.Core.Types: instance (HasLinearMap v, Floating (Scalar v)) => Transformable (Measure v)
+ Diagrams.Core.Types: instance (Typeable v, Data v, Data (Scalar v)) => Data (Measure v)
+ Diagrams.Core.Types: instance AdditiveGroup (Measure v)
+ Diagrams.Core.Types: instance Eq (Scalar v) => Eq (Measure v)
+ Diagrams.Core.Types: instance Ord (Scalar v) => Ord (Measure v)
+ Diagrams.Core.Types: instance Show (Scalar v) => Show (Measure v)
+ Diagrams.Core.Types: instance Typeable Measure
+ Diagrams.Core.Types: instance Typeable QDiagram
+ Diagrams.Core.Types: instance VectorSpace (Measure v)
+ Diagrams.Core.Types: renderRTree :: Backend b v => b -> Options b v -> RTree b v Annotation -> Result b v
- Diagrams.Core: adjustDia :: (Backend b v, Monoid' m) => b -> Options b v -> QDiagram b v m -> (Options b v, QDiagram b v m)
+ Diagrams.Core: adjustDia :: (Backend b v, Monoid' m, Num (Scalar v)) => b -> Options b v -> QDiagram b v m -> (Options b v, Transformation v, QDiagram b v m)
- Diagrams.Core: class (HasLinearMap v, Monoid (Render b v)) => Backend b v where data family Render b v :: * type family Result b v :: * data family Options b v :: * withStyle _ _ _ r = r adjustDia _ o d = (o, d) renderDia b opts d = doRender b opts' . renderData b $ d' where (opts', d') = adjustDia b opts d renderData b = mconcat . map renderOne . prims where renderOne :: (Prim b v, (Split (Transformation v), Style v)) -> Render b v renderOne (p, (M t, s)) = withStyle b s mempty (render b (transform t p)) renderOne (p, (t1 :| t2, s)) = withStyle b s t1 (render b (transformWithFreeze t1 t2 p))
+ Diagrams.Core: class HasLinearMap v => Backend b v where data family Render b v :: * type family Result b v :: * data family Options b v :: * adjustDia _ o d = (o, mempty, d)
- Diagrams.Core: renderDia :: (Backend b v, InnerSpace v, OrderedField (Scalar v), Monoid' m) => b -> Options b v -> QDiagram b v m -> Result b v
+ Diagrams.Core: renderDia :: (Backend b v, InnerSpace v, Data v, OrderedField (Scalar v), Data (Scalar v), Monoid' m) => b -> Options b v -> QDiagram b v m -> Result b v
- Diagrams.Core.Compile: RPrim :: (Transformation v) -> (Prim b v) -> RNode b v a
+ Diagrams.Core.Compile: RPrim :: (Prim b v) -> RNode b v a
- Diagrams.Core.Compile: toDTree :: HasLinearMap v => QDiagram b v m -> Maybe (DTree b v Annotation)
+ Diagrams.Core.Compile: toDTree :: HasLinearMap v => Scalar v -> Scalar v -> QDiagram b v m -> Maybe (DTree b v Annotation)
- Diagrams.Core.Compile: toRTree :: HasLinearMap v => QDiagram b v m -> RTree b v Annotation
+ Diagrams.Core.Compile: toRTree :: (HasLinearMap v, InnerSpace v, Data v, Data (Scalar v), OrderedField (Scalar v), Monoid m, Semigroup m) => Transformation v -> QDiagram b v m -> RTree b v Annotation
- Diagrams.Core.Transform: (:-:) :: (u :-* v) -> (v :-* u) -> :-: u v
+ Diagrams.Core.Transform: (:-:) :: (u :-* v) -> (v :-* u) -> (:-:) u v
- Diagrams.Core.Types: DTransform :: (Split (Transformation v)) -> DNode b v a
+ Diagrams.Core.Types: DTransform :: (Transformation v) -> DNode b v a
- Diagrams.Core.Types: DelayedLeaf :: (DownAnnots v -> QDiagram b v m) -> QDiaLeaf b v m
+ Diagrams.Core.Types: DelayedLeaf :: (DownAnnots v -> Scalar v -> Scalar v -> QDiagram b v m) -> QDiaLeaf b v m
- Diagrams.Core.Types: RPrim :: (Transformation v) -> (Prim b v) -> RNode b v a
+ Diagrams.Core.Types: RPrim :: (Prim b v) -> RNode b v a
- Diagrams.Core.Types: adjustDia :: (Backend b v, Monoid' m) => b -> Options b v -> QDiagram b v m -> (Options b v, QDiagram b v m)
+ Diagrams.Core.Types: adjustDia :: (Backend b v, Monoid' m, Num (Scalar v)) => b -> Options b v -> QDiagram b v m -> (Options b v, Transformation v, QDiagram b v m)
- Diagrams.Core.Types: class (HasLinearMap v, Monoid (Render b v)) => Backend b v where data family Render b v :: * type family Result b v :: * data family Options b v :: * withStyle _ _ _ r = r adjustDia _ o d = (o, d) renderDia b opts d = doRender b opts' . renderData b $ d' where (opts', d') = adjustDia b opts d renderData b = mconcat . map renderOne . prims where renderOne :: (Prim b v, (Split (Transformation v), Style v)) -> Render b v renderOne (p, (M t, s)) = withStyle b s mempty (render b (transform t p)) renderOne (p, (t1 :| t2, s)) = withStyle b s t1 (render b (transformWithFreeze t1 t2 p))
+ Diagrams.Core.Types: class HasLinearMap v => Backend b v where data family Render b v :: * type family Result b v :: * data family Options b v :: * adjustDia _ o d = (o, mempty, d)
- Diagrams.Core.Types: type DownAnnots v = (Split (Transformation v) :+: Style v) ::: (Name ::: ())
+ Diagrams.Core.Types: type DownAnnots v = (Transformation v :+: Style v) ::: (Name ::: ())
- Diagrams.Core.Types: withQDiaLeaf :: (Prim b v -> r) -> ((DownAnnots v -> QDiagram b v m) -> r) -> (QDiaLeaf b v m -> r)
+ Diagrams.Core.Types: withQDiaLeaf :: (Prim b v -> r) -> ((DownAnnots v -> Scalar v -> Scalar v -> QDiagram b v m) -> r) -> (QDiaLeaf b v m -> r)

Files

CHANGES.markdown view
@@ -1,3 +1,47 @@+1.2 (27 May 2014)+-----------------++* **New features**++    - New function `matrixHomRep` to convert a transformation to a+      homogeneous matrix representation.++    - New function `dropTransl` to drop the translation component+      from a transformation.++    - A mini-DSL for Measures.++    - New `extent` function, used in `diameter`.++    - New `dimension` function to return the dimension of a vector space.++    - New `_relative` iso between points and vectors.++    - `avgScale` function (for computing the average scaling factor of+      a transformation) has been moved from `diagrams-lib` to+      `diagrams-core` and generalized to work over any vector space.++* **Dependency/version changes**++    - Allow `semigroups-0.15`+    - Allow `lens-4.2`++* **API changes**++    - Major refactoring which removes `freeze` (and hence `Split` transforms,+      etc.) and adds units of `Measure`.++    - Refactoring and simplification of the `Backend` class.++    - Remove `Multibackend`.++    - Remove `nullPrim`, `IsPrim` and simplify `RPrim` so that it does not+      carry a transformation.++    - Update `adjustDia` to return a transformation, not just a scale factor.+      Add `renderDiaT` which returns a transformation (for use by end+      users, e.g. to convert output coordinates back into local coordinates).+ 1.1.0.3 (15 May 2014) ---------------------- 
diagrams-core.cabal view
@@ -1,5 +1,5 @@ Name:                diagrams-core-Version:             1.1.0.3+Version:             1.2 Synopsis:            Core libraries for diagrams EDSL Description:         The core modules underlying diagrams,                      an embedded domain-specific language@@ -37,15 +37,14 @@    Build-depends:       base >= 4.2 && < 4.8,                        containers >= 0.4.2 && < 0.6,-                       semigroups >= 0.8.4 && < 0.15,+                       semigroups >= 0.8.4 && < 0.16,                        vector-space >= 0.8.4 && < 0.9,                        vector-space-points >= 0.1 && < 0.3,                        MemoTrie >= 0.4.7 && < 0.7,                        newtype >= 0.2 && < 0.3,                        monoid-extras >= 0.3 && < 0.4,                        dual-tree >= 0.2 && < 0.3,-                       lens >= 4.0 && < 4.2-+                       lens >= 4.0 && < 4.3   hs-source-dirs:      src    Other-extensions:    DeriveDataTypeable
diagrams/src_Diagrams_Core_Trace_maxRayTracePEx.svg view
@@ -1,4 +1,4 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"     "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">-<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="600.0" height="251.1919698870766" font-size="1" viewBox="0 0 600 251"><g><g stroke="rgb(0,0,0)" stroke-opacity="1.0" fill="rgb(0,0,0)" fill-opacity="0.0" stroke-width="1.0e-2" stroke-linecap="butt" stroke-linejoin="miter" font-size="1.0em" stroke-miterlimit="10.0"><g transform="matrix(50.188205771643666,0.0,0.0,50.188205771643666,84.19071518193223,125.59598494353831)"><g><g><path d="M 7.127500000000001,1.9206044693365778 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M 9.677500000000002,-1.5793955306634222 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M 9.627500000000001,-1.5793955306634222 l 0.20472536320389398,-0.3412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 9.927500000000002,-2.079395530663422 l -6.400648041348231e-2,0.2780448438866492 l -2.8602755563472637e-2,-0.12369611725839137 l -0.12260375314021488,3.2972212036178644e-2 l 0.21521298911716982,-0.18732093866443647 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 9.834890764023047,-1.9250468040351643 l 1.6220638094109115e-3,7.01481347572395e-3 l -8.574929257125418e-3,-5.144957554275266e-3 l 6.952865447714507e-3,-1.8698559214486844e-3 v 4.336808689942018e-19 Z" /></g></g></g></g></g></g><g><g><path d="M 2.8275000000000006,1.525 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M 3.8275000000000006,0.32499999999999996 l 1.08,-1.8 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M 3.8775000000000004,0.32499999999999996 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M 3.8275000000000006,0.32499999999999996 l 0.20472536320389326,-0.3412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 4.1275,-0.17499999999999996 l -6.400648041348188e-2,0.2780448438866493 l -2.8602755563472824e-2,-0.12369611725839133 l -0.12260375314021484,3.297221203617883e-2 l 0.21521298911716952,-0.1873209386644368 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 4.034890764023046,-2.0651273371741996e-2 l 1.6220638094109228e-3,7.014813475723947e-3 l -8.574929257125427e-3,-5.144957554275253e-3 l 6.952865447714504e-3,-1.8698559214486944e-3 h -0.0 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 4.9575000000000005,-1.475 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g><g><path d="M -1.525,0.7249999999999999 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M -0.5249999999999999,2.2249999999999996 l 2.0,-3.3333333333333335 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M -0.4749999999999999,2.2249999999999996 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M -0.5249999999999999,2.2249999999999996 l 0.2047253632038934,-0.34120893867315566 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M -0.22499999999999998,1.7249999999999996 l -6.400648041348193e-2,0.2780448438866493 l -2.8602755563472804e-2,-0.12369611725839133 l -0.12260375314021485,3.297221203617881e-2 l 0.21521298911716957,-0.18732093866443678 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M -0.31760923597695473,1.8793487266282576 l 1.6220638094109206e-3,7.014813475723948e-3 l -8.574929257125425e-3,-5.1449575542752545e-3 l 6.952865447714505e-3,-1.8698559214486935e-3 h -0.0 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 1.5250000000000001,-1.1083333333333336 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g></g></g></svg>+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="600.0" height="251.1919698870766" font-size="1" viewBox="0 0 600 251" stroke="rgb(0,0,0)" stroke-opacity="1"><g><g fill="rgb(0,0,0)" fill-opacity="0.0"><g stroke="rgb(0,0,0)" stroke-opacity="1.0" stroke-width="1.5528821304000942" stroke-linecap="butt" stroke-linejoin="miter" font-size="1.0em" stroke-miterlimit="10.0"><g><g><path d="M 441.9071518193225,225.97239648682563 h 150.564617314931 v -150.564617314931 h -100.37641154328733 v 50.188205771643666 h 50.188205771643666 v 50.188205771643666 h -100.37641154328733 v 50.188205771643666 " /><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 569.8870765370139,50.31367628607279 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 567.3776662484316,50.31367628607279 l 8.065638164754679,-13.442730274591154 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 582.4341279799247,25.219573400250958 l -3.7905642133058457,16.466251981400138 l -3.0650161405918075,-5.04028472490403 l -5.889670588134995,-0.3325273123320436 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 575.5785476260271,36.645540656747066 l -0.13524321284074345,0.22540535473457277 l 0.42874646285627227,0.25724787771376295 l -0.2935032500155288,-0.4826532324483357 l -0.13524321284074345,0.22540535473457277 l -0.42874646285627227,-0.25724787771376295 Z" /></g></g></g></g></g></g></g></g><g><g><path d="M 226.09786700125468,202.1329987452949 h 150.564617314931 v -150.564617314931 h -100.37641154328733 v 50.188205771643666 h 50.188205771643666 v 50.188205771643666 h -100.37641154328733 v 50.188205771643666 " /><g stroke-dasharray="5.018820577164367,5.018820577164367" stroke-dashoffset="0.0"><path d="M 276.28607277289836,141.9071518193225 l 54.20326223337516,-90.33877038895861 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 278.7954830614805,141.9071518193225 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 276.28607277289836,141.9071518193225 l 8.065638164754676,-13.442730274591147 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 291.34253450439144,116.81304893350068 l -3.7905642133058457,16.466251981400138 l -3.0650161405918075,-5.04028472490403 l -5.889670588134995,-0.3325273123320436 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 284.4869541504938,128.2390161899968 l -0.13524321284074345,0.22540535473457277 l 0.42874646285627227,0.25724787771376295 l -0.2935032500155288,-0.4826532324483357 l -0.13524321284074345,0.22540535473457277 l -0.42874646285627227,-0.25724787771376295 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 332.99874529485567,51.5683814303639 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g></g></g><g><path d="M 7.653701380175647,161.98243412797996 h 150.564617314931 v -150.564617314931 h -100.37641154328733 v 50.188205771643666 h 50.188205771643666 v 50.188205771643666 h -100.37641154328733 v 50.188205771643666 " /><g stroke-dasharray="5.018820577164367,5.018820577164367" stroke-dashoffset="0.0"><path d="M 57.84190715181931,237.26474278544546 l 100.37641154328733,-167.29401923881224 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 60.351317440401495,237.26474278544546 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 57.84190715181931,237.26474278544546 l 8.065638164754697,-13.442730274591153 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 72.89836888331241,212.17063989962364 l -3.7905642133058626,16.466251981400134 l -3.065016140591802,-5.040284724904033 l -5.889670588134995,-0.3325273123320498 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 66.04278852941475,223.59660715611975 l -0.13524321284074367,0.22540535473457263 l 0.428746462856272,0.2572478777137634 l -0.29350325001552835,-0.482653232448336 l -0.13524321284074367,0.22540535473457263 l -0.428746462856272,-0.2572478777137634 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 160.72772898368885,69.97072354663322 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g></g></g></g></g></svg>
diagrams/src_Diagrams_Core_Trace_maxRayTraceVEx.svg view
@@ -1,4 +1,4 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"     "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">-<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="600.0" height="251.1919698870766" font-size="1" viewBox="0 0 600 251"><g><g stroke="rgb(0,0,0)" stroke-opacity="1.0" fill="rgb(0,0,0)" fill-opacity="0.0" stroke-width="1.0e-2" stroke-linecap="butt" stroke-linejoin="miter" font-size="1.0em" stroke-miterlimit="10.0"><g transform="matrix(50.188205771643666,0.0,0.0,50.188205771643666,84.19071518193223,125.59598494353831)"><g><g><path d="M 7.127500000000001,1.9206044693365778 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M 9.677500000000002,-1.5793955306634222 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M 9.627500000000001,-1.5793955306634222 l 0.20472536320389398,-0.3412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 9.927500000000002,-2.079395530663422 l -6.400648041348231e-2,0.2780448438866492 l -2.8602755563472637e-2,-0.12369611725839137 l -0.12260375314021488,3.2972212036178644e-2 l 0.21521298911716982,-0.18732093866443647 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 9.834890764023047,-1.9250468040351643 l 1.6220638094109115e-3,7.01481347572395e-3 l -8.574929257125418e-3,-5.144957554275266e-3 l 6.952865447714507e-3,-1.8698559214486844e-3 v 4.336808689942018e-19 Z" /></g></g></g></g></g></g><g><g><path d="M 2.8275000000000006,1.525 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M 3.8275000000000006,0.32499999999999996 l 1.08,-1.8 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M 3.8775000000000004,0.32499999999999996 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M 3.8275000000000006,0.32499999999999996 l 0.20472536320389326,-0.3412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 4.1275,-0.17499999999999996 l -6.400648041348188e-2,0.2780448438866493 l -2.8602755563472824e-2,-0.12369611725839133 l -0.12260375314021484,3.297221203617883e-2 l 0.21521298911716952,-0.1873209386644368 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 4.034890764023046,-2.0651273371741996e-2 l 1.6220638094109228e-3,7.014813475723947e-3 l -8.574929257125427e-3,-5.144957554275253e-3 l 6.952865447714504e-3,-1.8698559214486944e-3 h -0.0 Z" /></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0" stroke-width="3.0e-2"><g><g fill-opacity="0.0"><path d="M 3.8275000000000006,0.32499999999999996 l 0.9847253632038933,-1.6412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 4.907500000000001,-1.4749999999999999 l -6.400648041348193e-2,0.2780448438866493 l -2.8602755563472804e-2,-0.12369611725839133 l -0.12260375314021485,3.297221203617881e-2 l 0.21521298911716957,-0.18732093866443678 Z" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 4.814890764023046,-1.320651273371742 l 1.6220638094109206e-3,7.014813475723948e-3 l -8.574929257125425e-3,-5.1449575542752545e-3 l 6.952865447714505e-3,-1.8698559214486935e-3 h -0.0 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 4.9575000000000005,-1.475 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g><g><path d="M -1.525,0.7249999999999999 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M -0.5249999999999999,2.2249999999999996 l 2.0,-3.3333333333333335 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M -0.4749999999999999,2.2249999999999996 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M -0.5249999999999999,2.2249999999999996 l 0.2047253632038934,-0.34120893867315566 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M -0.22499999999999998,1.7249999999999996 l -6.400648041348193e-2,0.2780448438866493 l -2.8602755563472804e-2,-0.12369611725839133 l -0.12260375314021485,3.297221203617881e-2 l 0.21521298911716957,-0.18732093866443678 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M -0.31760923597695473,1.8793487266282576 l 1.6220638094109206e-3,7.014813475723948e-3 l -8.574929257125425e-3,-5.1449575542752545e-3 l 6.952865447714505e-3,-1.8698559214486935e-3 h -0.0 Z" /></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0" stroke-width="3.0e-2"><g><g fill-opacity="0.0"><path d="M -0.5249999999999999,2.2249999999999996 l 1.9047253632038939,-3.17454227200649 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 1.4750000000000005,-1.1083333333333345 l -6.400648041348193e-2,0.2780448438866493 l -2.8602755563472804e-2,-0.12369611725839133 l -0.12260375314021485,3.297221203617881e-2 l 0.21521298911716957,-0.18732093866443678 Z" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 1.3823907640230457,-0.9539846067050766 l 1.6220638094109206e-3,7.014813475723948e-3 l -8.574929257125425e-3,-5.1449575542752545e-3 l 6.952865447714505e-3,-1.8698559214486935e-3 h -0.0 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 1.5250000000000001,-1.1083333333333336 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g></g></g></svg>+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="600.0" height="251.1919698870766" font-size="1" viewBox="0 0 600 251" stroke="rgb(0,0,0)" stroke-opacity="1"><g><g fill="rgb(0,0,0)" fill-opacity="0.0"><g stroke="rgb(0,0,0)" stroke-opacity="1.0" stroke-width="1.5528821304000942" stroke-linecap="butt" stroke-linejoin="miter" font-size="1.0em" stroke-miterlimit="10.0"><g><g><path d="M 441.9071518193225,225.97239648682563 h 150.564617314931 v -150.564617314931 h -100.37641154328733 v 50.188205771643666 h 50.188205771643666 v 50.188205771643666 h -100.37641154328733 v 50.188205771643666 " /><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 569.8870765370139,50.31367628607279 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 567.3776662484316,50.31367628607279 l 8.065638164754679,-13.442730274591154 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 582.4341279799247,25.219573400250958 l -3.7905642133058457,16.466251981400138 l -3.0650161405918075,-5.04028472490403 l -5.889670588134995,-0.3325273123320436 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 575.5785476260271,36.645540656747066 l -0.13524321284074345,0.22540535473457277 l 0.42874646285627227,0.25724787771376295 l -0.2935032500155288,-0.4826532324483357 l -0.13524321284074345,0.22540535473457277 l -0.42874646285627227,-0.25724787771376295 Z" /></g></g></g></g></g></g></g></g><g><g><path d="M 226.09786700125468,202.1329987452949 h 150.564617314931 v -150.564617314931 h -100.37641154328733 v 50.188205771643666 h 50.188205771643666 v 50.188205771643666 h -100.37641154328733 v 50.188205771643666 " /><g stroke-dasharray="5.018820577164367,5.018820577164367" stroke-dashoffset="0.0"><path d="M 276.28607277289836,141.9071518193225 l 54.20326223337516,-90.33877038895861 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 278.7954830614805,141.9071518193225 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 276.28607277289836,141.9071518193225 l 8.065638164754676,-13.442730274591147 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 291.34253450439144,116.81304893350068 l -3.7905642133058457,16.466251981400138 l -3.0650161405918075,-5.04028472490403 l -5.889670588134995,-0.3325273123320436 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 284.4869541504938,128.2390161899968 l -0.13524321284074345,0.22540535473457277 l 0.42874646285627227,0.25724787771376295 l -0.2935032500155288,-0.4826532324483357 l -0.13524321284074345,0.22540535473457277 l -0.42874646285627227,-0.25724787771376295 Z" /></g></g></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0"><g><g><path d="M 276.28607277289836,141.9071518193225 l 47.21243866663673,-78.68739777772794 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 330.4893350062735,51.568381430363885 l -3.790564213305852,16.466251981400134 l -3.0650161405918057,-5.04028472490403 l -5.889670588134995,-0.3325273123320458 Z" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 323.63375465237584,62.99434868685999 l -0.13524321284074353,0.2254053547345727 l 0.42874646285627216,0.2572478777137631 l -0.2935032500155286,-0.4826532324483358 l -0.13524321284074353,0.2254053547345727 l -0.42874646285627216,-0.2572478777137631 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 332.99874529485567,51.5683814303639 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g></g></g><g><path d="M 7.653701380175647,161.98243412797996 h 150.564617314931 v -150.564617314931 h -100.37641154328733 v 50.188205771643666 h 50.188205771643666 v 50.188205771643666 h -100.37641154328733 v 50.188205771643666 " /><g stroke-dasharray="5.018820577164367,5.018820577164367" stroke-dashoffset="0.0"><path d="M 57.84190715181931,237.26474278544546 l 100.37641154328733,-167.29401923881224 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 60.351317440401495,237.26474278544546 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 57.84190715181931,237.26474278544546 l 8.065638164754697,-13.442730274591153 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 72.89836888331241,212.17063989962364 l -3.7905642133058626,16.466251981400134 l -3.065016140591802,-5.040284724904033 l -5.889670588134995,-0.3325273123320498 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 66.04278852941475,223.59660715611975 l -0.13524321284074367,0.22540535473457263 l 0.428746462856272,0.2572478777137634 l -0.29350325001552835,-0.482653232448336 l -0.13524321284074367,0.22540535473457263 l -0.428746462856272,-0.2572478777137634 Z" /></g></g></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0"><g><g><path d="M 57.84190715181931,237.26474278544546 l 93.38558797654892,-155.64264662758154 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 158.21831869510663,69.97072354663325 l -3.7905642133058564,16.466251981400134 l -3.065016140591804,-5.040284724904032 l -5.889670588134995,-0.3325273123320476 Z" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 151.36273834120897,81.39669080312936 l -0.1352432128407436,0.22540535473457268 l 0.4287464628562721,0.25724787771376323 l -0.2935032500155285,-0.4826532324483359 l -0.1352432128407436,0.22540535473457268 l -0.4287464628562721,-0.25724787771376323 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 160.72772898368885,69.97072354663322 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g></g></g></g></g></svg>
diagrams/src_Diagrams_Core_Trace_maxTracePEx.svg view
@@ -1,4 +1,4 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"     "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">-<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="600.0" height="251.1919698870766" font-size="1" viewBox="0 0 600 251"><g><g stroke="rgb(0,0,0)" stroke-opacity="1.0" fill="rgb(0,0,0)" fill-opacity="0.0" stroke-width="1.0e-2" stroke-linecap="butt" stroke-linejoin="miter" font-size="1.0em" stroke-miterlimit="10.0"><g transform="matrix(50.188205771643666,0.0,0.0,50.188205771643666,84.19071518193223,125.59598494353831)"><g><g><path d="M 7.127500000000001,1.9206044693365778 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M 9.627500000000001,-1.5793955306634222 l -0.2999999999999998,0.5 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M 9.677500000000002,-1.5793955306634222 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M 9.627500000000001,-1.5793955306634222 l 0.20472536320389398,-0.3412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 9.927500000000002,-2.079395530663422 l -6.400648041348231e-2,0.2780448438866492 l -2.8602755563472637e-2,-0.12369611725839137 l -0.12260375314021488,3.2972212036178644e-2 l 0.21521298911716982,-0.18732093866443647 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 9.834890764023047,-1.9250468040351643 l 1.6220638094109115e-3,7.01481347572395e-3 l -8.574929257125418e-3,-5.144957554275266e-3 l 6.952865447714507e-3,-1.8698559214486844e-3 v 4.336808689942018e-19 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 9.377500000000001,-1.0793955306634222 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g><g><g><path d="M 2.8275000000000006,1.525 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M 3.8275000000000006,0.32499999999999996 l 1.08,-1.8 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M 3.8775000000000004,0.32499999999999996 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M 3.8275000000000006,0.32499999999999996 l 0.20472536320389326,-0.3412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 4.1275,-0.17499999999999996 l -6.400648041348188e-2,0.2780448438866493 l -2.8602755563472824e-2,-0.12369611725839133 l -0.12260375314021484,3.297221203617883e-2 l 0.21521298911716952,-0.1873209386644368 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 4.034890764023046,-2.0651273371741996e-2 l 1.6220638094109228e-3,7.014813475723947e-3 l -8.574929257125427e-3,-5.144957554275253e-3 l 6.952865447714504e-3,-1.8698559214486944e-3 h -0.0 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 4.9575000000000005,-1.475 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g><g><path d="M -1.525,0.7249999999999999 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M -0.5249999999999999,2.2249999999999996 l 2.0,-3.3333333333333335 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M -0.4749999999999999,2.2249999999999996 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M -0.5249999999999999,2.2249999999999996 l 0.2047253632038934,-0.34120893867315566 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M -0.22499999999999998,1.7249999999999996 l -6.400648041348193e-2,0.2780448438866493 l -2.8602755563472804e-2,-0.12369611725839133 l -0.12260375314021485,3.297221203617881e-2 l 0.21521298911716957,-0.18732093866443678 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M -0.31760923597695473,1.8793487266282576 l 1.6220638094109206e-3,7.014813475723948e-3 l -8.574929257125425e-3,-5.1449575542752545e-3 l 6.952865447714505e-3,-1.8698559214486935e-3 h -0.0 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 1.5250000000000001,-1.1083333333333336 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g></g></g></svg>+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="600.0" height="251.1919698870766" font-size="1" viewBox="0 0 600 251" stroke="rgb(0,0,0)" stroke-opacity="1"><g><g fill="rgb(0,0,0)" fill-opacity="0.0"><g stroke="rgb(0,0,0)" stroke-opacity="1.0" stroke-width="1.5528821304000942" stroke-linecap="butt" stroke-linejoin="miter" font-size="1.0em" stroke-miterlimit="10.0"><g><g><path d="M 441.9071518193225,225.97239648682563 h 150.564617314931 v -150.564617314931 h -100.37641154328733 v 50.188205771643666 h 50.188205771643666 v 50.188205771643666 h -100.37641154328733 v 50.188205771643666 " /><g stroke-dasharray="5.018820577164367,5.018820577164367" stroke-dashoffset="0.0"><path d="M 567.3776662484316,50.31367628607279 l -15.05646173149309,25.094102885821833 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 569.8870765370139,50.31367628607279 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 567.3776662484316,50.31367628607279 l 8.065638164754679,-13.442730274591154 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 582.4341279799247,25.219573400250958 l -3.7905642133058457,16.466251981400138 l -3.0650161405918075,-5.04028472490403 l -5.889670588134995,-0.3325273123320436 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 575.5785476260271,36.645540656747066 l -0.13524321284074345,0.22540535473457277 l 0.42874646285627227,0.25724787771376295 l -0.2935032500155288,-0.4826532324483357 l -0.13524321284074345,0.22540535473457277 l -0.42874646285627227,-0.25724787771376295 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 554.8306148055208,75.40777917189462 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g></g></g><g><g><path d="M 226.09786700125468,202.1329987452949 h 150.564617314931 v -150.564617314931 h -100.37641154328733 v 50.188205771643666 h 50.188205771643666 v 50.188205771643666 h -100.37641154328733 v 50.188205771643666 " /><g stroke-dasharray="5.018820577164367,5.018820577164367" stroke-dashoffset="0.0"><path d="M 276.28607277289836,141.9071518193225 l 54.20326223337516,-90.33877038895861 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 278.7954830614805,141.9071518193225 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 276.28607277289836,141.9071518193225 l 8.065638164754676,-13.442730274591147 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 291.34253450439144,116.81304893350068 l -3.7905642133058457,16.466251981400138 l -3.0650161405918075,-5.04028472490403 l -5.889670588134995,-0.3325273123320436 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 284.4869541504938,128.2390161899968 l -0.13524321284074345,0.22540535473457277 l 0.42874646285627227,0.25724787771376295 l -0.2935032500155288,-0.4826532324483357 l -0.13524321284074345,0.22540535473457277 l -0.42874646285627227,-0.25724787771376295 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 332.99874529485567,51.5683814303639 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g></g></g><g><path d="M 7.653701380175647,161.98243412797996 h 150.564617314931 v -150.564617314931 h -100.37641154328733 v 50.188205771643666 h 50.188205771643666 v 50.188205771643666 h -100.37641154328733 v 50.188205771643666 " /><g stroke-dasharray="5.018820577164367,5.018820577164367" stroke-dashoffset="0.0"><path d="M 57.84190715181931,237.26474278544546 l 100.37641154328733,-167.29401923881224 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 60.351317440401495,237.26474278544546 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 57.84190715181931,237.26474278544546 l 8.065638164754697,-13.442730274591153 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 72.89836888331241,212.17063989962364 l -3.7905642133058626,16.466251981400134 l -3.065016140591802,-5.040284724904033 l -5.889670588134995,-0.3325273123320498 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 66.04278852941475,223.59660715611975 l -0.13524321284074367,0.22540535473457263 l 0.428746462856272,0.2572478777137634 l -0.29350325001552835,-0.482653232448336 l -0.13524321284074367,0.22540535473457263 l -0.428746462856272,-0.2572478777137634 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 160.72772898368885,69.97072354663322 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g></g></g></g></g></svg>
diagrams/src_Diagrams_Core_Trace_maxTraceVEx.svg view
@@ -1,4 +1,4 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"     "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">-<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="600.0" height="251.1919698870766" font-size="1" viewBox="0 0 600 251"><g><g stroke="rgb(0,0,0)" stroke-opacity="1.0" fill="rgb(0,0,0)" fill-opacity="0.0" stroke-width="1.0e-2" stroke-linecap="butt" stroke-linejoin="miter" font-size="1.0em" stroke-miterlimit="10.0"><g transform="matrix(50.188205771643666,0.0,0.0,50.188205771643666,84.19071518193223,125.59598494353831)"><g><g><path d="M 7.127500000000001,1.9206044693365778 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M 9.627500000000001,-1.5793955306634222 l -0.2999999999999998,0.5 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M 9.677500000000002,-1.5793955306634222 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M 9.627500000000001,-1.5793955306634222 l 0.20472536320389398,-0.3412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 9.927500000000002,-2.079395530663422 l -6.400648041348231e-2,0.2780448438866492 l -2.8602755563472637e-2,-0.12369611725839137 l -0.12260375314021488,3.2972212036178644e-2 l 0.21521298911716982,-0.18732093866443647 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 9.834890764023047,-1.9250468040351643 l 1.6220638094109115e-3,7.01481347572395e-3 l -8.574929257125418e-3,-5.144957554275266e-3 l 6.952865447714507e-3,-1.8698559214486844e-3 v 4.336808689942018e-19 Z" /></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0" stroke-width="3.0e-2"><g><g fill-opacity="0.0"><path d="M 9.627500000000001,-1.5793955306634222 l -0.20472536320389395,0.34120893867315594 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 9.3275,-1.079395530663422 l 6.400648041348217e-2,-0.2780448438866492 l 2.8602755563472707e-2,0.12369611725839134 l 0.12260375314021486,-3.2972212036178714e-2 l -0.21521298911716974,0.18732093866443655 Z" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 9.420109235976955,-1.23374425729168 l -1.6220638094109154e-3,-7.014813475723949e-3 l 8.574929257125422e-3,5.1449575542752615e-3 l -6.952865447714507e-3,1.8698559214486874e-3 h -0.0 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 9.377500000000001,-1.0793955306634222 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g><g><g><path d="M 2.8275000000000006,1.525 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M 3.8275000000000006,0.32499999999999996 l 1.08,-1.8 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M 3.8775000000000004,0.32499999999999996 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M 3.8275000000000006,0.32499999999999996 l 0.20472536320389326,-0.3412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 4.1275,-0.17499999999999996 l -6.400648041348188e-2,0.2780448438866493 l -2.8602755563472824e-2,-0.12369611725839133 l -0.12260375314021484,3.297221203617883e-2 l 0.21521298911716952,-0.1873209386644368 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 4.034890764023046,-2.0651273371741996e-2 l 1.6220638094109228e-3,7.014813475723947e-3 l -8.574929257125427e-3,-5.144957554275253e-3 l 6.952865447714504e-3,-1.8698559214486944e-3 h -0.0 Z" /></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0" stroke-width="3.0e-2"><g><g fill-opacity="0.0"><path d="M 3.8275000000000006,0.32499999999999996 l 0.9847253632038933,-1.6412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 4.907500000000001,-1.4749999999999999 l -6.400648041348193e-2,0.2780448438866493 l -2.8602755563472804e-2,-0.12369611725839133 l -0.12260375314021485,3.297221203617881e-2 l 0.21521298911716957,-0.18732093866443678 Z" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 4.814890764023046,-1.320651273371742 l 1.6220638094109206e-3,7.014813475723948e-3 l -8.574929257125425e-3,-5.1449575542752545e-3 l 6.952865447714505e-3,-1.8698559214486935e-3 h -0.0 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 4.9575000000000005,-1.475 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g><g><path d="M -1.525,0.7249999999999999 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M -0.5249999999999999,2.2249999999999996 l 2.0,-3.3333333333333335 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M -0.4749999999999999,2.2249999999999996 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M -0.5249999999999999,2.2249999999999996 l 0.2047253632038934,-0.34120893867315566 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M -0.22499999999999998,1.7249999999999996 l -6.400648041348193e-2,0.2780448438866493 l -2.8602755563472804e-2,-0.12369611725839133 l -0.12260375314021485,3.297221203617881e-2 l 0.21521298911716957,-0.18732093866443678 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M -0.31760923597695473,1.8793487266282576 l 1.6220638094109206e-3,7.014813475723948e-3 l -8.574929257125425e-3,-5.1449575542752545e-3 l 6.952865447714505e-3,-1.8698559214486935e-3 h -0.0 Z" /></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0" stroke-width="3.0e-2"><g><g fill-opacity="0.0"><path d="M -0.5249999999999999,2.2249999999999996 l 1.9047253632038939,-3.17454227200649 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 1.4750000000000005,-1.1083333333333345 l -6.400648041348193e-2,0.2780448438866493 l -2.8602755563472804e-2,-0.12369611725839133 l -0.12260375314021485,3.297221203617881e-2 l 0.21521298911716957,-0.18732093866443678 Z" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 1.3823907640230457,-0.9539846067050766 l 1.6220638094109206e-3,7.014813475723948e-3 l -8.574929257125425e-3,-5.1449575542752545e-3 l 6.952865447714505e-3,-1.8698559214486935e-3 h -0.0 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 1.5250000000000001,-1.1083333333333336 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g></g></g></svg>+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="600.0" height="251.1919698870766" font-size="1" viewBox="0 0 600 251" stroke="rgb(0,0,0)" stroke-opacity="1"><g><g fill="rgb(0,0,0)" fill-opacity="0.0"><g stroke="rgb(0,0,0)" stroke-opacity="1.0" stroke-width="1.5528821304000942" stroke-linecap="butt" stroke-linejoin="miter" font-size="1.0em" stroke-miterlimit="10.0"><g><g><path d="M 441.9071518193225,225.97239648682563 h 150.564617314931 v -150.564617314931 h -100.37641154328733 v 50.188205771643666 h 50.188205771643666 v 50.188205771643666 h -100.37641154328733 v 50.188205771643666 " /><g stroke-dasharray="5.018820577164367,5.018820577164367" stroke-dashoffset="0.0"><path d="M 567.3776662484316,50.31367628607279 l -15.05646173149309,25.094102885821833 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 569.8870765370139,50.31367628607279 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 567.3776662484316,50.31367628607279 l 8.065638164754679,-13.442730274591154 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 582.4341279799247,25.219573400250958 l -3.7905642133058457,16.466251981400138 l -3.0650161405918075,-5.04028472490403 l -5.889670588134995,-0.3325273123320436 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 575.5785476260271,36.645540656747066 l -0.13524321284074345,0.22540535473457277 l 0.42874646285627227,0.25724787771376295 l -0.2935032500155288,-0.4826532324483357 l -0.13524321284074345,0.22540535473457277 l -0.42874646285627227,-0.25724787771376295 Z" /></g></g></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0"><g><g><path d="M 567.3776662484316,50.31367628607279 l -8.06563816475467,13.44273027459115 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 552.3212045169386,75.40777917189463 l 3.7905642133058386,-16.46625198140014 l 3.06501614059181,5.040284724904028 l 5.8896705881349956,0.33252731233204136 Z" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 559.1767848708362,63.98181191539852 l 0.13524321284074337,-0.22540535473457282 l -0.4287464628562724,-0.2572478777137628 l 0.293503250015529,0.4826532324483356 l 0.13524321284074337,-0.22540535473457282 l 0.4287464628562724,0.2572478777137628 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 554.8306148055208,75.40777917189462 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g></g></g><g><g><path d="M 226.09786700125468,202.1329987452949 h 150.564617314931 v -150.564617314931 h -100.37641154328733 v 50.188205771643666 h 50.188205771643666 v 50.188205771643666 h -100.37641154328733 v 50.188205771643666 " /><g stroke-dasharray="5.018820577164367,5.018820577164367" stroke-dashoffset="0.0"><path d="M 276.28607277289836,141.9071518193225 l 54.20326223337516,-90.33877038895861 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 278.7954830614805,141.9071518193225 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 276.28607277289836,141.9071518193225 l 8.065638164754676,-13.442730274591147 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 291.34253450439144,116.81304893350068 l -3.7905642133058457,16.466251981400138 l -3.0650161405918075,-5.04028472490403 l -5.889670588134995,-0.3325273123320436 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 284.4869541504938,128.2390161899968 l -0.13524321284074345,0.22540535473457277 l 0.42874646285627227,0.25724787771376295 l -0.2935032500155288,-0.4826532324483357 l -0.13524321284074345,0.22540535473457277 l -0.42874646285627227,-0.25724787771376295 Z" /></g></g></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0"><g><g><path d="M 276.28607277289836,141.9071518193225 l 47.21243866663673,-78.68739777772794 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 330.4893350062735,51.568381430363885 l -3.790564213305852,16.466251981400134 l -3.0650161405918057,-5.04028472490403 l -5.889670588134995,-0.3325273123320458 Z" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 323.63375465237584,62.99434868685999 l -0.13524321284074353,0.2254053547345727 l 0.42874646285627216,0.2572478777137631 l -0.2935032500155286,-0.4826532324483358 l -0.13524321284074353,0.2254053547345727 l -0.42874646285627216,-0.2572478777137631 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 332.99874529485567,51.5683814303639 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g></g></g><g><path d="M 7.653701380175647,161.98243412797996 h 150.564617314931 v -150.564617314931 h -100.37641154328733 v 50.188205771643666 h 50.188205771643666 v 50.188205771643666 h -100.37641154328733 v 50.188205771643666 " /><g stroke-dasharray="5.018820577164367,5.018820577164367" stroke-dashoffset="0.0"><path d="M 57.84190715181931,237.26474278544546 l 100.37641154328733,-167.29401923881224 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 60.351317440401495,237.26474278544546 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 57.84190715181931,237.26474278544546 l 8.065638164754697,-13.442730274591153 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 72.89836888331241,212.17063989962364 l -3.7905642133058626,16.466251981400134 l -3.065016140591802,-5.040284724904033 l -5.889670588134995,-0.3325273123320498 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 66.04278852941475,223.59660715611975 l -0.13524321284074367,0.22540535473457263 l 0.428746462856272,0.2572478777137634 l -0.29350325001552835,-0.482653232448336 l -0.13524321284074367,0.22540535473457263 l -0.428746462856272,-0.2572478777137634 Z" /></g></g></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0"><g><g><path d="M 57.84190715181931,237.26474278544546 l 93.38558797654892,-155.64264662758154 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 158.21831869510663,69.97072354663325 l -3.7905642133058564,16.466251981400134 l -3.065016140591804,-5.040284724904032 l -5.889670588134995,-0.3325273123320476 Z" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 151.36273834120897,81.39669080312936 l -0.1352432128407436,0.22540535473457268 l 0.4287464628562721,0.25724787771376323 l -0.2935032500155285,-0.4826532324483359 l -0.1352432128407436,0.22540535473457268 l -0.4287464628562721,-0.25724787771376323 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 160.72772898368885,69.97072354663322 c 0.0,-1.3859090334524304 -1.1235012551297527,-2.5094102885821834 -2.509410288582183 -2.5094102885821834c -1.3859090334524304,-8.486245308634604e-17 -2.5094102885821834,1.1235012551297525 -2.5094102885821834 2.5094102885821825c -1.6972490617269208e-16,1.3859090334524304 1.1235012551297525,2.5094102885821834 2.509410288582182 2.5094102885821834c 1.3859090334524304,2.5458735925903813e-16 2.5094102885821834,-1.1235012551297523 2.509410288582184 -2.5094102885821825Z" /></g></g></g></g></g></g></g></svg>
diagrams/src_Diagrams_Core_Trace_rayTracePEx.svg view
@@ -1,4 +1,4 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"     "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">-<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="600.0" height="252.3529411764706" font-size="1" viewBox="0 0 600 252"><g><g stroke="rgb(0,0,0)" stroke-opacity="1.0" fill="rgb(0,0,0)" fill-opacity="0.0" stroke-width="1.0e-2" stroke-linecap="butt" stroke-linejoin="miter" font-size="1.0em" stroke-miterlimit="10.0"><g transform="matrix(50.42016806722689,0.0,0.0,50.42016806722689,83.19327731092437,126.17647058823532)"><g><g><path d="M 7.100000000000001,1.9206044693365778 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M 9.650000000000002,-1.5793955306634222 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M 9.600000000000001,-1.5793955306634222 l 0.20472536320389398,-0.3412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 9.900000000000002,-2.079395530663422 l -6.400648041348231e-2,0.2780448438866492 l -2.8602755563472637e-2,-0.12369611725839137 l -0.12260375314021488,3.2972212036178644e-2 l 0.21521298911716982,-0.18732093866443647 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 9.807390764023047,-1.9250468040351643 l 1.6220638094109115e-3,7.01481347572395e-3 l -8.574929257125418e-3,-5.144957554275266e-3 l 6.952865447714507e-3,-1.8698559214486844e-3 v 4.336808689942018e-19 Z" /></g></g></g></g></g></g><g><g><path d="M 2.8000000000000007,1.5 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M 3.8000000000000007,0.30000000000000004 l 0.48,-0.8 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M 3.8500000000000005,0.30000000000000004 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M 3.8000000000000007,0.30000000000000004 l 0.20472536320389326,-0.3412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 4.1000000000000005,-0.19999999999999987 l -6.400648041348188e-2,0.2780448438866493 l -2.8602755563472824e-2,-0.12369611725839133 l -0.12260375314021484,3.297221203617883e-2 l 0.21521298911716952,-0.1873209386644368 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 4.007390764023046,-4.565127337174191e-2 l 1.6220638094109228e-3,7.014813475723947e-3 l -8.574929257125427e-3,-5.144957554275253e-3 l 6.952865447714504e-3,-1.8698559214486944e-3 h -0.0 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 4.330000000000001,-0.5 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g><g><path d="M -1.5,0.7249999999999999 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M -0.5,2.2249999999999996 l 0.8999999999999999,-1.5 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M -0.45,2.2249999999999996 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M -0.5,2.2249999999999996 l 0.2047253632038934,-0.34120893867315566 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M -0.20000000000000007,1.7249999999999996 l -6.400648041348193e-2,0.2780448438866493 l -2.8602755563472804e-2,-0.12369611725839133 l -0.12260375314021485,3.297221203617881e-2 l 0.21521298911716957,-0.18732093866443678 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M -0.2926092359769548,1.8793487266282576 l 1.6220638094109206e-3,7.014813475723948e-3 l -8.574929257125425e-3,-5.1449575542752545e-3 l 6.952865447714505e-3,-1.8698559214486935e-3 h -0.0 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 0.4499999999999999,0.7249999999999999 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g></g></g></svg>+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="600.0" height="252.3529411764706" font-size="1" viewBox="0 0 600 252" stroke="rgb(0,0,0)" stroke-opacity="1"><g><g fill="rgb(0,0,0)" fill-opacity="0.0"><g stroke="rgb(0,0,0)" stroke-opacity="1.0" stroke-width="1.55646658662951" stroke-linecap="butt" stroke-linejoin="miter" font-size="1.0em" stroke-miterlimit="10.0"><g><g><path d="M 441.1764705882354,227.0168067226891 h 151.26050420168067 v -151.26050420168067 h -100.84033613445378 v 50.42016806722689 h 50.42016806722689 v 50.42016806722689 h -100.84033613445378 v 50.42016806722689 " /><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 569.7478991596639,50.54621848739498 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 567.2268907563025,50.54621848739498 l 8.119090212668617,-13.53181702111433 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 582.3529411764706,25.33613445378154 l -3.799486429928585,16.50501018700616 l -3.072230564730154,-5.052148529241624 l -5.90353367390974,-0.33331001394232596 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 575.4812241818119,36.788996111546076 l -0.13524321284074386,0.22540535473457254 l 0.4287464628562718,0.25724787771376373 l -0.29350325001552796,-0.48265323244833624 l -0.13524321284074386,0.22540535473457254 l -0.4287464628562718,-0.25724787771376373 Z" /></g></g></g></g></g></g></g></g><g><g><path d="M 224.36974789915968,201.80672268907566 h 151.26050420168067 v -151.26050420168067 h -100.84033613445378 v 50.42016806722689 h 50.42016806722689 v 50.42016806722689 h -100.84033613445378 v 50.42016806722689 " /><g stroke-dasharray="5.042016806722689,5.042016806722689" stroke-dashoffset="0.0"><path d="M 274.78991596638656,141.3025210084034 l 24.201680672268907,-40.33613445378151 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 277.3109243697479,141.3025210084034 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 274.78991596638656,141.3025210084034 l 8.11909021266858,-13.53181702111432 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 289.9159663865546,116.09243697478996 l -3.799486429928556,16.505010187006164 l -3.072230564730163,-5.0521485292416175 l -5.90353367390974,-0.33331001394231574 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 283.0442493918959,127.5452986325545 l -0.13524321284074345,0.22540535473457277 l 0.42874646285627227,0.25724787771376295 l -0.2935032500155288,-0.4826532324483357 l -0.13524321284074345,0.22540535473457277 l -0.42874646285627227,-0.25724787771376295 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 301.5126050420168,100.96638655462188 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g></g></g><g><path d="M 7.563025210084035,162.7310924369748 h 151.26050420168067 v -151.26050420168067 h -100.84033613445378 v 50.42016806722689 h 50.42016806722689 v 50.42016806722689 h -100.84033613445378 v 50.42016806722689 " /><g stroke-dasharray="5.042016806722689,5.042016806722689" stroke-dashoffset="0.0"><path d="M 57.983193277310924,238.3613445378151 l 45.3781512605042,-75.63025210084034 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 60.50420168067227,238.3613445378151 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 57.983193277310924,238.3613445378151 l 8.119090212668594,-13.531817021114325 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 73.10924369747899,213.15126050420167 l -3.7994864299285664,16.505010187006164 l -3.0722305647301598,-5.052148529241619 l -5.903533673909739,-0.3333100139423193 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 66.23752670282026,224.60412216196622 l -0.1352432128407436,0.22540535473457268 l 0.4287464628562721,0.25724787771376323 l -0.2935032500155285,-0.4826532324483359 l -0.1352432128407436,0.22540535473457268 l -0.4287464628562721,-0.25724787771376323 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 105.88235294117646,162.7310924369748 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g></g></g></g></g></svg>
diagrams/src_Diagrams_Core_Trace_rayTraceVEx.svg view
@@ -1,4 +1,4 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"     "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">-<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="600.0" height="252.3529411764706" font-size="1" viewBox="0 0 600 252"><g><g stroke="rgb(0,0,0)" stroke-opacity="1.0" fill="rgb(0,0,0)" fill-opacity="0.0" stroke-width="1.0e-2" stroke-linecap="butt" stroke-linejoin="miter" font-size="1.0em" stroke-miterlimit="10.0"><g transform="matrix(50.42016806722689,0.0,0.0,50.42016806722689,83.19327731092437,126.17647058823532)"><g><g><path d="M 7.100000000000001,1.9206044693365778 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M 9.650000000000002,-1.5793955306634222 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M 9.600000000000001,-1.5793955306634222 l 0.20472536320389398,-0.3412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 9.900000000000002,-2.079395530663422 l -6.400648041348231e-2,0.2780448438866492 l -2.8602755563472637e-2,-0.12369611725839137 l -0.12260375314021488,3.2972212036178644e-2 l 0.21521298911716982,-0.18732093866443647 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 9.807390764023047,-1.9250468040351643 l 1.6220638094109115e-3,7.01481347572395e-3 l -8.574929257125418e-3,-5.144957554275266e-3 l 6.952865447714507e-3,-1.8698559214486844e-3 v 4.336808689942018e-19 Z" /></g></g></g></g></g></g><g><g><path d="M 2.8000000000000007,1.5 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M 3.8000000000000007,0.30000000000000004 l 0.48,-0.8 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M 3.8500000000000005,0.30000000000000004 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M 3.8000000000000007,0.30000000000000004 l 0.20472536320389326,-0.3412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 4.1000000000000005,-0.19999999999999987 l -6.400648041348188e-2,0.2780448438866493 l -2.8602755563472824e-2,-0.12369611725839133 l -0.12260375314021484,3.297221203617883e-2 l 0.21521298911716952,-0.1873209386644368 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 4.007390764023046,-4.565127337174191e-2 l 1.6220638094109228e-3,7.014813475723947e-3 l -8.574929257125427e-3,-5.144957554275253e-3 l 6.952865447714504e-3,-1.8698559214486944e-3 h -0.0 Z" /></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0" stroke-width="3.0e-2"><g><g fill-opacity="0.0"><path d="M 3.8000000000000007,0.30000000000000004 l 0.38472536320389383,-0.6412089386731558 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 4.280000000000001,-0.5 l -6.40064804134821e-2,0.27804484388664924 l -2.8602755563472734e-2,-0.12369611725839136 l -0.12260375314021485,3.297221203617875e-2 l 0.21521298911716968,-0.18732093866443664 Z" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 4.187390764023046,-0.34565127337174206 l 1.6220638094109176e-3,7.014813475723949e-3 l -8.574929257125424e-3,-5.14495755427526e-3 l 6.952865447714506e-3,-1.8698559214486892e-3 h -0.0 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 4.330000000000001,-0.5 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g><g><path d="M -1.5,0.7249999999999999 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M -0.5,2.2249999999999996 l 0.8999999999999999,-1.5 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M -0.45,2.2249999999999996 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M -0.5,2.2249999999999996 l 0.2047253632038934,-0.34120893867315566 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M -0.20000000000000007,1.7249999999999996 l -6.400648041348193e-2,0.2780448438866493 l -2.8602755563472804e-2,-0.12369611725839133 l -0.12260375314021485,3.297221203617881e-2 l 0.21521298911716957,-0.18732093866443678 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M -0.2926092359769548,1.8793487266282576 l 1.6220638094109206e-3,7.014813475723948e-3 l -8.574929257125425e-3,-5.1449575542752545e-3 l 6.952865447714505e-3,-1.8698559214486935e-3 h -0.0 Z" /></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0" stroke-width="3.0e-2"><g><g fill-opacity="0.0"><path d="M -0.5,2.2249999999999996 l 0.8047253632038933,-1.3412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 0.39999999999999986,0.7249999999999999 l -6.400648041348193e-2,0.2780448438866493 l -2.8602755563472804e-2,-0.12369611725839133 l -0.12260375314021485,3.297221203617881e-2 l 0.21521298911716957,-0.18732093866443678 Z" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 0.3073907640230451,0.8793487266282578 l 1.6220638094109206e-3,7.014813475723948e-3 l -8.574929257125425e-3,-5.1449575542752545e-3 l 6.952865447714505e-3,-1.8698559214486935e-3 h -0.0 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 0.4499999999999999,0.7249999999999999 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g></g></g></svg>+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="600.0" height="252.3529411764706" font-size="1" viewBox="0 0 600 252" stroke="rgb(0,0,0)" stroke-opacity="1"><g><g fill="rgb(0,0,0)" fill-opacity="0.0"><g stroke="rgb(0,0,0)" stroke-opacity="1.0" stroke-width="1.55646658662951" stroke-linecap="butt" stroke-linejoin="miter" font-size="1.0em" stroke-miterlimit="10.0"><g><g><path d="M 441.1764705882354,227.0168067226891 h 151.26050420168067 v -151.26050420168067 h -100.84033613445378 v 50.42016806722689 h 50.42016806722689 v 50.42016806722689 h -100.84033613445378 v 50.42016806722689 " /><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 569.7478991596639,50.54621848739498 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 567.2268907563025,50.54621848739498 l 8.119090212668617,-13.53181702111433 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 582.3529411764706,25.33613445378154 l -3.799486429928585,16.50501018700616 l -3.072230564730154,-5.052148529241624 l -5.90353367390974,-0.33331001394232596 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 575.4812241818119,36.788996111546076 l -0.13524321284074386,0.22540535473457254 l 0.4287464628562718,0.25724787771376373 l -0.29350325001552796,-0.48265323244833624 l -0.13524321284074386,0.22540535473457254 l -0.4287464628562718,-0.25724787771376373 Z" /></g></g></g></g></g></g></g></g><g><g><path d="M 224.36974789915968,201.80672268907566 h 151.26050420168067 v -151.26050420168067 h -100.84033613445378 v 50.42016806722689 h 50.42016806722689 v 50.42016806722689 h -100.84033613445378 v 50.42016806722689 " /><g stroke-dasharray="5.042016806722689,5.042016806722689" stroke-dashoffset="0.0"><path d="M 274.78991596638656,141.3025210084034 l 24.201680672268907,-40.33613445378151 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 277.3109243697479,141.3025210084034 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 274.78991596638656,141.3025210084034 l 8.11909021266858,-13.53181702111432 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 289.9159663865546,116.09243697478996 l -3.799486429928556,16.505010187006164 l -3.072230564730163,-5.0521485292416175 l -5.90353367390974,-0.33331001394231574 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 283.0442493918959,127.5452986325545 l -0.13524321284074345,0.22540535473457277 l 0.42874646285627227,0.25724787771376295 l -0.2935032500155288,-0.4826532324483357 l -0.13524321284074345,0.22540535473457277 l -0.42874646285627227,-0.25724787771376295 Z" /></g></g></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0"><g><g><path d="M 274.78991596638656,141.3025210084034 l 17.194720464769414,-28.65786744128239 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 298.99159663865544,100.96638655462189 l -3.7994864299285593,16.505010187006164 l -3.0722305647301624,-5.052148529241618 l -5.90353367390974,-0.33331001394231663 Z" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 292.11987964399674,112.41924821238644 l -0.1352432128407435,0.22540535473457274 l 0.4287464628562722,0.25724787771376306 l -0.2935032500155287,-0.4826532324483358 l -0.1352432128407435,0.22540535473457274 l -0.4287464628562722,-0.25724787771376306 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 301.5126050420168,100.96638655462188 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g></g></g><g><path d="M 7.563025210084035,162.7310924369748 h 151.26050420168067 v -151.26050420168067 h -100.84033613445378 v 50.42016806722689 h 50.42016806722689 v 50.42016806722689 h -100.84033613445378 v 50.42016806722689 " /><g stroke-dasharray="5.042016806722689,5.042016806722689" stroke-dashoffset="0.0"><path d="M 57.983193277310924,238.3613445378151 l 45.3781512605042,-75.63025210084034 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 60.50420168067227,238.3613445378151 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 57.983193277310924,238.3613445378151 l 8.119090212668594,-13.531817021114325 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 73.10924369747899,213.15126050420167 l -3.7994864299285664,16.505010187006164 l -3.0722305647301598,-5.052148529241619 l -5.903533673909739,-0.3333100139423193 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 66.23752670282026,224.60412216196622 l -0.1352432128407436,0.22540535473457268 l 0.4287464628562721,0.25724787771376323 l -0.2935032500155285,-0.4826532324483359 l -0.1352432128407436,0.22540535473457268 l -0.4287464628562721,-0.25724787771376323 Z" /></g></g></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0"><g><g><path d="M 57.983193277310924,238.3613445378151 l 38.371191053004715,-63.951985088341196 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 103.36134453781511,162.73109243697482 l -3.7994864299285664,16.505010187006164 l -3.0722305647301598,-5.052148529241619 l -5.903533673909739,-0.3333100139423193 Z" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 96.48962754315639,174.18395409473936 l -0.1352432128407436,0.22540535473457268 l 0.4287464628562721,0.25724787771376323 l -0.2935032500155285,-0.4826532324483359 l -0.1352432128407436,0.22540535473457268 l -0.4287464628562721,-0.25724787771376323 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 105.88235294117646,162.7310924369748 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g></g></g></g></g></svg>
diagrams/src_Diagrams_Core_Trace_traceEx.svg view
@@ -1,4 +1,4 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"     "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">-<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="200.0" height="206.66666666666666" font-size="1" viewBox="0 0 200 207"><g><g stroke="rgb(0,0,0)" stroke-opacity="1.0" fill="rgb(0,0,0)" fill-opacity="0.0" stroke-width="1.0e-2" stroke-linecap="butt" stroke-linejoin="miter" font-size="1.0em" stroke-miterlimit="10.0"><g transform="matrix(60.6060606060606,0.0,0.0,60.6060606060606,100.0,103.33333333333333)"><g><path d="M -1.5,1.4999999999999998 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M -0.5,0.2999999999999998 l -0.72,1.2 " /></g><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M -0.5,0.2999999999999998 l 1.08,-1.8 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M -0.45,0.2999999999999998 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M -0.5,0.2999999999999998 l 0.2047253632038934,-0.34120893867315566 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M -0.20000000000000007,-0.20000000000000015 l -6.400648041348193e-2,0.2780448438866493 l -2.8602755563472804e-2,-0.12369611725839133 l -0.12260375314021485,3.297221203617881e-2 l 0.21521298911716957,-0.18732093866443678 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M -0.2926092359769548,-4.5651273371742185e-2 l 1.6220638094109206e-3,7.014813475723948e-3 l -8.574929257125425e-3,-5.1449575542752545e-3 l 6.952865447714505e-3,-1.8698559214486935e-3 h -0.0 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 0.6300000000000001,-1.5000000000000002 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 2.9999999999999985e-2,-0.5000000000000002 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M -0.57,0.4999999999999998 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M -1.17,1.4999999999999998 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g></g></g></svg>+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="200.0" height="206.66666666666666" font-size="1" viewBox="0 0 200 207" stroke="rgb(0,0,0)" stroke-opacity="1"><g><g fill="rgb(0,0,0)" fill-opacity="0.0"><g stroke="rgb(0,0,0)" stroke-opacity="1.0" stroke-width="0.8132240363721016" stroke-linecap="butt" stroke-linejoin="miter" font-size="1.0em" stroke-miterlimit="10.0"><g><path d="M 9.090909090909093,194.24242424242422 h 181.8181818181818 v -181.8181818181818 h -121.2121212121212 v 60.6060606060606 h 60.6060606060606 v 60.6060606060606 h -121.2121212121212 v 60.6060606060606 " /><g stroke-dasharray="6.0606060606060606,6.0606060606060606" stroke-dashoffset="0.0"><path d="M 69.69696969696969,121.5151515151515 l -43.63636363636363,72.72727272727272 " /></g><g stroke-dasharray="6.0606060606060606,6.0606060606060606" stroke-dashoffset="0.0"><path d="M 69.69696969696969,121.5151515151515 l 65.45454545454545,-109.09090909090908 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 72.72727272727272,121.5151515151515 c 0.0,-1.6735901510024045 -1.3567128793006256,-3.0303030303030303 -3.0303030303030294 -3.0303030303030303c -1.6735901510024045,-1.024778410754815e-16 -3.0303030303030303,1.3567128793006253 -3.0303030303030303 3.0303030303030294c -2.04955682150963e-16,1.6735901510024045 1.3567128793006251,3.0303030303030303 3.030303030303029 3.0303030303030303c 1.6735901510024045,3.074335232264445e-16 3.0303030303030303,-1.3567128793006251 3.0303030303030307 -3.0303030303030294Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 69.69696969696969,121.5151515151515 l 14.520815426223662,-24.201359043706105 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 87.87878787878786,91.2121212121212 l -1.9494509957695625,8.468436231485862 l -1.5763085469842033,-2.5921703268962526 l -3.029001369371613,-0.17101562291723638 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 84.3530283360341,97.08838711671082 l -0.1352432128407436,0.22540535473457268 l 0.4287464628562721,0.25724787771376323 l -0.2935032500155285,-0.4826532324483359 l -0.1352432128407436,0.22540535473457268 l -0.4287464628562721,-0.25724787771376323 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 138.1818181818182,12.424242424242408 c 0.0,-1.6735901510024045 -1.3567128793006256,-3.0303030303030303 -3.0303030303030294 -3.0303030303030303c -1.6735901510024045,-1.024778410754815e-16 -3.0303030303030303,1.3567128793006253 -3.0303030303030303 3.0303030303030294c -2.04955682150963e-16,1.6735901510024045 1.3567128793006251,3.0303030303030303 3.030303030303029 3.0303030303030303c 1.6735901510024045,3.074335232264445e-16 3.0303030303030303,-1.3567128793006251 3.0303030303030307 -3.0303030303030294Z" /></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 101.81818181818181,73.03030303030302 c 0.0,-1.6735901510024045 -1.3567128793006256,-3.0303030303030303 -3.0303030303030294 -3.0303030303030303c -1.6735901510024045,-1.024778410754815e-16 -3.0303030303030303,1.3567128793006253 -3.0303030303030303 3.0303030303030294c -2.04955682150963e-16,1.6735901510024045 1.3567128793006251,3.0303030303030303 3.030303030303029 3.0303030303030303c 1.6735901510024045,3.074335232264445e-16 3.0303030303030303,-1.3567128793006251 3.0303030303030307 -3.0303030303030294Z" /></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 65.45454545454545,133.63636363636363 c 0.0,-1.6735901510024045 -1.3567128793006256,-3.0303030303030303 -3.0303030303030294 -3.0303030303030303c -1.6735901510024045,-1.024778410754815e-16 -3.0303030303030303,1.3567128793006253 -3.0303030303030303 3.0303030303030294c -2.04955682150963e-16,1.6735901510024045 1.3567128793006251,3.0303030303030303 3.030303030303029 3.0303030303030303c 1.6735901510024045,3.074335232264445e-16 3.0303030303030303,-1.3567128793006251 3.0303030303030307 -3.0303030303030294Z" /></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 29.090909090909093,194.24242424242422 c 0.0,-1.6735901510024045 -1.3567128793006256,-3.0303030303030303 -3.0303030303030294 -3.0303030303030303c -1.6735901510024045,-1.024778410754815e-16 -3.0303030303030303,1.3567128793006253 -3.0303030303030303 3.0303030303030294c -2.04955682150963e-16,1.6735901510024045 1.3567128793006251,3.0303030303030303 3.030303030303029 3.0303030303030303c 1.6735901510024045,3.074335232264445e-16 3.0303030303030303,-1.3567128793006251 3.0303030303030307 -3.0303030303030294Z" /></g></g></g></g></g></g></g></svg>
diagrams/src_Diagrams_Core_Trace_tracePEx.svg view
@@ -1,4 +1,4 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"     "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">-<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="600.0" height="252.3529411764706" font-size="1" viewBox="0 0 600 252"><g><g stroke="rgb(0,0,0)" stroke-opacity="1.0" fill="rgb(0,0,0)" fill-opacity="0.0" stroke-width="1.0e-2" stroke-linecap="butt" stroke-linejoin="miter" font-size="1.0em" stroke-miterlimit="10.0"><g transform="matrix(50.42016806722689,0.0,0.0,50.42016806722689,83.19327731092437,126.17647058823532)"><g><g><path d="M 7.100000000000001,1.8956044693365777 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M 9.600000000000001,-1.6043955306634223 l -2.1,3.5 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M 9.650000000000002,-1.6043955306634223 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M 9.600000000000001,-1.6043955306634223 l 0.20472536320389406,-0.3412089386731558 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 9.900000000000002,-2.1043955306634223 l -6.400648041348227e-2,0.27804484388664924 l -2.8602755563472658e-2,-0.12369611725839136 l -0.12260375314021488,3.297221203617867e-2 l 0.2152129891171698,-0.18732093866443655 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 9.807390764023047,-1.9500468040351646 l 1.6220638094109128e-3,7.01481347572395e-3 l -8.57492925712542e-3,-5.144957554275265e-3 l 6.952865447714507e-3,-1.8698559214486848e-3 h -0.0 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 7.550000000000002,1.8956044693365777 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g><g><g><path d="M 2.8000000000000007,1.4749999999999999 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M 3.8000000000000007,0.2749999999999999 l -0.72,1.2 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M 3.8500000000000005,0.2749999999999999 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M 3.8000000000000007,0.2749999999999999 l 0.20472536320389326,-0.3412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 4.1000000000000005,-0.225 l -6.400648041348188e-2,0.2780448438866493 l -2.8602755563472824e-2,-0.12369611725839133 l -0.12260375314021484,3.297221203617883e-2 l 0.21521298911716952,-0.1873209386644368 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 4.007390764023046,-7.065127337174204e-2 l 1.6220638094109228e-3,7.014813475723947e-3 l -8.574929257125427e-3,-5.144957554275253e-3 l 6.952865447714504e-3,-1.8698559214486944e-3 h -0.0 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 3.130000000000001,1.4749999999999999 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g><g><path d="M -1.5,0.7249999999999999 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M -0.5,2.2249999999999996 l 0.8999999999999999,-1.5 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M -0.45,2.2249999999999996 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M -0.5,2.2249999999999996 l 0.2047253632038934,-0.34120893867315566 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M -0.20000000000000007,1.7249999999999996 l -6.400648041348193e-2,0.2780448438866493 l -2.8602755563472804e-2,-0.12369611725839133 l -0.12260375314021485,3.297221203617881e-2 l 0.21521298911716957,-0.18732093866443678 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M -0.2926092359769548,1.8793487266282576 l 1.6220638094109206e-3,7.014813475723948e-3 l -8.574929257125425e-3,-5.1449575542752545e-3 l 6.952865447714505e-3,-1.8698559214486935e-3 h -0.0 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 0.4499999999999999,0.7249999999999999 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g></g></g></svg>+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="600.0" height="252.3529411764706" font-size="1" viewBox="0 0 600 252" stroke="rgb(0,0,0)" stroke-opacity="1"><g><g fill="rgb(0,0,0)" fill-opacity="0.0"><g stroke="rgb(0,0,0)" stroke-opacity="1.0" stroke-width="1.55646658662951" stroke-linecap="butt" stroke-linejoin="miter" font-size="1.0em" stroke-miterlimit="10.0"><g><g><path d="M 441.1764705882354,225.75630252100842 h 151.26050420168067 v -151.26050420168067 h -100.84033613445378 v 50.42016806722689 h 50.42016806722689 v 50.42016806722689 h -100.84033613445378 v 50.42016806722689 " /><g stroke-dasharray="5.042016806722689,5.042016806722689" stroke-dashoffset="0.0"><path d="M 567.2268907563026,49.285714285714306 l -105.88235294117648,176.47058823529412 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 569.7478991596639,49.285714285714306 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 567.2268907563025,49.285714285714306 l 8.119090212668617,-13.53181702111433 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 582.3529411764706,24.075630252100865 l -3.799486429928585,16.50501018700616 l -3.072230564730154,-5.052148529241624 l -5.90353367390974,-0.33331001394232596 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 575.4812241818119,35.5284919098654 l -0.13524321284074386,0.22540535473457254 l 0.4287464628562718,0.25724787771376373 l -0.29350325001552796,-0.48265323244833624 l -0.13524321284074386,0.22540535473457254 l -0.4287464628562718,-0.25724787771376373 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 463.8655462184875,225.75630252100842 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g></g></g><g><g><path d="M 224.36974789915968,200.54621848739498 h 151.26050420168067 v -151.26050420168067 h -100.84033613445378 v 50.42016806722689 h 50.42016806722689 v 50.42016806722689 h -100.84033613445378 v 50.42016806722689 " /><g stroke-dasharray="5.042016806722689,5.042016806722689" stroke-dashoffset="0.0"><path d="M 274.78991596638656,140.0420168067227 l -36.30252100840336,60.50420168067227 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 277.3109243697479,140.0420168067227 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 274.78991596638656,140.0420168067227 l 8.11909021266858,-13.53181702111432 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 289.9159663865546,114.83193277310926 l -3.799486429928556,16.505010187006164 l -3.072230564730163,-5.0521485292416175 l -5.90353367390974,-0.33331001394231574 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 283.0442493918959,126.2847944308738 l -0.13524321284074345,0.22540535473457277 l 0.42874646285627227,0.25724787771376295 l -0.2935032500155288,-0.4826532324483357 l -0.13524321284074345,0.22540535473457277 l -0.42874646285627227,-0.25724787771376295 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 241.00840336134456,200.54621848739498 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g></g></g><g><path d="M 7.563025210084035,162.7310924369748 h 151.26050420168067 v -151.26050420168067 h -100.84033613445378 v 50.42016806722689 h 50.42016806722689 v 50.42016806722689 h -100.84033613445378 v 50.42016806722689 " /><g stroke-dasharray="5.042016806722689,5.042016806722689" stroke-dashoffset="0.0"><path d="M 57.983193277310924,238.3613445378151 l 45.3781512605042,-75.63025210084034 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 60.50420168067227,238.3613445378151 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 57.983193277310924,238.3613445378151 l 8.119090212668594,-13.531817021114325 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 73.10924369747899,213.15126050420167 l -3.7994864299285664,16.505010187006164 l -3.0722305647301598,-5.052148529241619 l -5.903533673909739,-0.3333100139423193 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 66.23752670282026,224.60412216196622 l -0.1352432128407436,0.22540535473457268 l 0.4287464628562721,0.25724787771376323 l -0.2935032500155285,-0.4826532324483359 l -0.1352432128407436,0.22540535473457268 l -0.4287464628562721,-0.25724787771376323 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 105.88235294117646,162.7310924369748 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g></g></g></g></g></svg>
diagrams/src_Diagrams_Core_Trace_traceVEx.svg view
@@ -1,4 +1,4 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"     "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">-<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="600.0" height="252.3529411764706" font-size="1" viewBox="0 0 600 252"><g><g stroke="rgb(0,0,0)" stroke-opacity="1.0" fill="rgb(0,0,0)" fill-opacity="0.0" stroke-width="1.0e-2" stroke-linecap="butt" stroke-linejoin="miter" font-size="1.0em" stroke-miterlimit="10.0"><g transform="matrix(50.42016806722689,0.0,0.0,50.42016806722689,83.19327731092437,126.17647058823532)"><g><g><path d="M 7.100000000000001,1.8956044693365777 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M 9.600000000000001,-1.6043955306634223 l -2.1,3.5 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M 9.650000000000002,-1.6043955306634223 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M 9.600000000000001,-1.6043955306634223 l 0.20472536320389406,-0.3412089386731558 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 9.900000000000002,-2.1043955306634223 l -6.400648041348227e-2,0.27804484388664924 l -2.8602755563472658e-2,-0.12369611725839136 l -0.12260375314021488,3.297221203617867e-2 l 0.2152129891171698,-0.18732093866443655 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 9.807390764023047,-1.9500468040351646 l 1.6220638094109128e-3,7.01481347572395e-3 l -8.57492925712542e-3,-5.144957554275265e-3 l 6.952865447714507e-3,-1.8698559214486848e-3 h -0.0 Z" /></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0" stroke-width="3.0e-2"><g><g fill-opacity="0.0"><path d="M 9.600000000000001,-1.6043955306634223 l -2.0047253632038924,3.3412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 7.500000000000002,1.8956044693365774 l 6.40064804134819e-2,-0.2780448438866493 l 2.8602755563472818e-2,0.12369611725839133 l 0.12260375314021485,-3.2972212036178825e-2 l -0.21521298911716957,0.18732093866443678 Z" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 7.592609235976957,1.7412557427083195 l -1.6220638094109224e-3,-7.014813475723948e-3 l 8.574929257125427e-3,5.144957554275254e-3 l -6.952865447714505e-3,1.869855921448694e-3 v 4.336808689942018e-19 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 7.550000000000002,1.8956044693365777 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g><g><g><path d="M 2.8000000000000007,1.4749999999999999 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M 3.8000000000000007,0.2749999999999999 l -0.72,1.2 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M 3.8500000000000005,0.2749999999999999 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M 3.8000000000000007,0.2749999999999999 l 0.20472536320389326,-0.3412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 4.1000000000000005,-0.225 l -6.400648041348188e-2,0.2780448438866493 l -2.8602755563472824e-2,-0.12369611725839133 l -0.12260375314021484,3.297221203617883e-2 l 0.21521298911716952,-0.1873209386644368 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 4.007390764023046,-7.065127337174204e-2 l 1.6220638094109228e-3,7.014813475723947e-3 l -8.574929257125427e-3,-5.144957554275253e-3 l 6.952865447714504e-3,-1.8698559214486944e-3 h -0.0 Z" /></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0" stroke-width="3.0e-2"><g><g fill-opacity="0.0"><path d="M 3.8000000000000007,0.2749999999999999 l -0.6247253632038933,1.041208938673156 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 3.080000000000001,1.475 l 6.40064804134819e-2,-0.2780448438866493 l 2.8602755563472818e-2,0.12369611725839133 l 0.12260375314021485,-3.2972212036178825e-2 l -0.21521298911716957,0.18732093866443678 Z" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 3.1726092359769558,1.3206512733717422 l -1.6220638094109224e-3,-7.014813475723948e-3 l 8.574929257125427e-3,5.144957554275254e-3 l -6.952865447714505e-3,1.869855921448694e-3 v 4.336808689942018e-19 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 3.130000000000001,1.4749999999999999 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g><g><path d="M -1.5,0.7249999999999999 h 3.0 v -3.0 h -2.0 v 1.0 h 1.0 v 1.0 h -2.0 v 1.0 " /><g fill-opacity="0.0" stroke-dasharray="0.1,0.1" stroke-dashoffset="0.0"><path d="M -0.5,2.2249999999999996 l 0.8999999999999999,-1.5 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><path d="M -0.45,2.2249999999999996 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0" stroke-width="2.0e-2"><g><g fill-opacity="0.0"><path d="M -0.5,2.2249999999999996 l 0.2047253632038934,-0.34120893867315566 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M -0.20000000000000007,1.7249999999999996 l -6.400648041348193e-2,0.2780448438866493 l -2.8602755563472804e-2,-0.12369611725839133 l -0.12260375314021485,3.297221203617881e-2 l 0.21521298911716957,-0.18732093866443678 Z" /></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M -0.2926092359769548,1.8793487266282576 l 1.6220638094109206e-3,7.014813475723948e-3 l -8.574929257125425e-3,-5.1449575542752545e-3 l 6.952865447714505e-3,-1.8698559214486935e-3 h -0.0 Z" /></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0" stroke-width="3.0e-2"><g><g fill-opacity="0.0"><path d="M -0.5,2.2249999999999996 l 0.8047253632038933,-1.3412089386731556 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 0.39999999999999986,0.7249999999999999 l -6.400648041348193e-2,0.2780448438866493 l -2.8602755563472804e-2,-0.12369611725839133 l -0.12260375314021485,3.297221203617881e-2 l 0.21521298911716957,-0.18732093866443678 Z" /></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 0.3073907640230451,0.8793487266282578 l 1.6220638094109206e-3,7.014813475723948e-3 l -8.574929257125425e-3,-5.1449575542752545e-3 l 6.952865447714505e-3,-1.8698559214486935e-3 h -0.0 Z" /></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><path d="M 0.4499999999999999,0.7249999999999999 c 0.0,-2.7614237491539673e-2 -2.2385762508460322e-2,-5.0e-2 -4.999999999999999e-2 -5.0e-2c -2.7614237491539673e-2,-1.6908843777454448e-18 -5.0e-2,2.238576250846032e-2 -5.0e-2 4.999999999999999e-2c -3.3817687554908897e-18,2.7614237491539673e-2 2.238576250846032e-2,5.0e-2 4.999999999999998e-2 5.0e-2c 2.7614237491539673e-2,5.072653133236335e-18 5.0e-2,-2.2385762508460316e-2 5.000000000000001e-2 -4.999999999999999e-2Z" /></g></g></g></g></g></svg>+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="600.0" height="252.3529411764706" font-size="1" viewBox="0 0 600 252" stroke="rgb(0,0,0)" stroke-opacity="1"><g><g fill="rgb(0,0,0)" fill-opacity="0.0"><g stroke="rgb(0,0,0)" stroke-opacity="1.0" stroke-width="1.55646658662951" stroke-linecap="butt" stroke-linejoin="miter" font-size="1.0em" stroke-miterlimit="10.0"><g><g><path d="M 441.1764705882354,225.75630252100842 h 151.26050420168067 v -151.26050420168067 h -100.84033613445378 v 50.42016806722689 h 50.42016806722689 v 50.42016806722689 h -100.84033613445378 v 50.42016806722689 " /><g stroke-dasharray="5.042016806722689,5.042016806722689" stroke-dashoffset="0.0"><path d="M 567.2268907563026,49.285714285714306 l -105.88235294117648,176.47058823529412 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 569.7478991596639,49.285714285714306 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 567.2268907563025,49.285714285714306 l 8.119090212668617,-13.53181702111433 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 582.3529411764706,24.075630252100865 l -3.799486429928585,16.50501018700616 l -3.072230564730154,-5.052148529241624 l -5.90353367390974,-0.33331001394232596 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 575.4812241818119,35.5284919098654 l -0.13524321284074386,0.22540535473457254 l 0.4287464628562718,0.25724787771376373 l -0.29350325001552796,-0.48265323244833624 l -0.13524321284074386,0.22540535473457254 l -0.4287464628562718,-0.25724787771376373 Z" /></g></g></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0"><g><g><path d="M 567.2268907563025,49.285714285714306 l -98.87539273367697,164.79232122279504 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 461.3445378151261,225.75630252100845 l 3.799486429928564,-16.505010187006164 l 3.0722305647301607,5.052148529241619 l 5.90353367390974,0.3333100139423184 Z" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 468.2162548097848,214.3034408632439 l 0.13524321284074356,-0.2254053547345727 l -0.42874646285627216,-0.2572478777137632 l 0.29350325001552857,0.4826532324483359 l 0.13524321284074356,-0.2254053547345727 l 0.42874646285627216,0.2572478777137632 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 463.8655462184875,225.75630252100842 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g></g></g><g><g><path d="M 224.36974789915968,200.54621848739498 h 151.26050420168067 v -151.26050420168067 h -100.84033613445378 v 50.42016806722689 h 50.42016806722689 v 50.42016806722689 h -100.84033613445378 v 50.42016806722689 " /><g stroke-dasharray="5.042016806722689,5.042016806722689" stroke-dashoffset="0.0"><path d="M 274.78991596638656,140.0420168067227 l -36.30252100840336,60.50420168067227 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 277.3109243697479,140.0420168067227 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 274.78991596638656,140.0420168067227 l 8.11909021266858,-13.53181702111432 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 289.9159663865546,114.83193277310926 l -3.799486429928556,16.505010187006164 l -3.072230564730163,-5.0521485292416175 l -5.90353367390974,-0.33331001394231574 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 283.0442493918959,126.2847944308738 l -0.13524321284074345,0.22540535473457277 l 0.42874646285627227,0.25724787771376295 l -0.2935032500155288,-0.4826532324483357 l -0.13524321284074345,0.22540535473457277 l -0.42874646285627227,-0.25724787771376295 Z" /></g></g></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0"><g><g><path d="M 274.78991596638656,140.0420168067227 l -29.295560800903882,48.82593466817316 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 238.4873949579832,200.54621848739498 l 3.799486429928564,-16.505010187006164 l 3.0722305647301607,5.052148529241619 l 5.90353367390974,0.3333100139423184 Z" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 245.35911195264194,189.09335682963044 l 0.13524321284074356,-0.2254053547345727 l -0.42874646285627216,-0.2572478777137632 l 0.29350325001552857,0.4826532324483359 l 0.13524321284074356,-0.2254053547345727 l 0.42874646285627216,0.2572478777137632 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 241.00840336134456,200.54621848739498 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g></g></g><g><path d="M 7.563025210084035,162.7310924369748 h 151.26050420168067 v -151.26050420168067 h -100.84033613445378 v 50.42016806722689 h 50.42016806722689 v 50.42016806722689 h -100.84033613445378 v 50.42016806722689 " /><g stroke-dasharray="5.042016806722689,5.042016806722689" stroke-dashoffset="0.0"><path d="M 57.983193277310924,238.3613445378151 l 45.3781512605042,-75.63025210084034 " /></g><g fill="rgb(0,0,255)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 60.50420168067227,238.3613445378151 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g><g stroke="rgb(0,0,255)" stroke-opacity="1.0"><g><g><path d="M 57.983193277310924,238.3613445378151 l 8.119090212668594,-13.531817021114325 " /></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 73.10924369747899,213.15126050420167 l -3.7994864299285664,16.505010187006164 l -3.0722305647301598,-5.052148529241619 l -5.903533673909739,-0.3333100139423193 Z" /></g></g></g><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><g fill="rgb(0,0,255)" fill-opacity="1.0"><path d="M 66.23752670282026,224.60412216196622 l -0.1352432128407436,0.22540535473457268 l 0.4287464628562721,0.25724787771376323 l -0.2935032500155285,-0.4826532324483359 l -0.1352432128407436,0.22540535473457268 l -0.4287464628562721,-0.25724787771376323 Z" /></g></g></g></g></g></g><g stroke="rgb(0,128,0)" stroke-opacity="1.0"><g><g><path d="M 57.983193277310924,238.3613445378151 l 38.371191053004715,-63.951985088341196 " /></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="" /></g></g></g></g><g stroke-width="0.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 103.36134453781511,162.73109243697482 l -3.7994864299285664,16.505010187006164 l -3.0722305647301598,-5.052148529241619 l -5.903533673909739,-0.3333100139423193 Z" /></g></g></g><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><g fill="rgb(0,128,0)" fill-opacity="1.0"><path d="M 96.48962754315639,174.18395409473936 l -0.1352432128407436,0.22540535473457268 l 0.4287464628562721,0.25724787771376323 l -0.2935032500155285,-0.4826532324483359 l -0.1352432128407436,0.22540535473457268 l -0.4287464628562721,-0.25724787771376323 Z" /></g></g></g></g></g></g><g fill="rgb(255,0,0)" fill-opacity="1.0" stroke-width="0.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><g fill="rgb(255,0,0)" fill-opacity="1.0"><path d="M 105.88235294117646,162.7310924369748 c 0.0,-1.3923144953717481 -1.1286939079895961,-2.5210084033613445 -2.521008403361344 -2.5210084033613445c -1.3923144953717481,-8.525467450817369e-17 -2.5210084033613445,1.128693907989596 -2.5210084033613445 2.5210084033613436c -1.7050934901634737e-16,1.3923144953717481 1.1286939079895957,2.5210084033613445 2.521008403361343 2.5210084033613445c 1.3923144953717481,2.5576402352452103e-16 2.5210084033613445,-1.1286939079895957 2.521008403361346 -2.5210084033613436Z" /></g></g></g></g></g></g></g></svg>
src/Diagrams/Core.hs view
@@ -29,11 +29,13 @@          -- * Points         , Point, origin, (*.)+       , _relative           -- * Transformations           -- ** Utilities        , basis+       , dimension        , determinant           -- ** Invertible linear transformations@@ -42,6 +44,7 @@          -- ** General transformations        , Transformation        , inv, transp, transl+       , dropTransl        , apply        , papply        , fromLinear@@ -49,6 +52,7 @@          -- ** Some specific transformations        , translation, translate, moveTo, place        , scaling, scale+       , avgScale           -- ** The Transformable class @@ -75,11 +79,11 @@          -- * Attributes and styles         , AttributeClass-       , Attribute, mkAttr, mkTAttr, unwrapAttr+       , Attribute, mkAttr, mkTAttr, mkGTAttr, unwrapAttr         , Style, HasStyle(..)        , getAttr, combineAttr-       , applyAttr, applyTAttr+       , applyAttr, applyTAttr, applyGTAttr           -- * Envelopes @@ -114,12 +118,11 @@           -- * Primtives -       , Prim(..), IsPrim(..), nullPrim+       , Prim(..)           -- * Diagrams         , QDiagram, Diagram, mkQD, pointDiagram-       , prims        , envelope, trace, subMap, names, query, sample        , value, resetValue, clearValue @@ -131,7 +134,7 @@         , href -       , freeze, setEnvelope, setTrace+       , setEnvelope, setTrace         , atop @@ -142,12 +145,21 @@        , location        , subPoint +         -- * Measurements+       , Measure(..)+       , fromOutput+       , toOutput+       , atMost+       , atLeast+          -- * Backends         , Backend(..)-       , MultiBackend(..)        , Renderable(..) +       , renderDia+       , renderDiaT+          -- ** The null backend         , NullBackend, D@@ -160,6 +172,7 @@         ) where +import           Diagrams.Core.Compile import           Diagrams.Core.Envelope import           Diagrams.Core.HasOrigin import           Diagrams.Core.Juxtapose
src/Diagrams/Core/Compile.hs view
@@ -1,3 +1,7 @@+{-# LANGUAGE FlexibleContexts      #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE ScopedTypeVariables   #-}+{-# LANGUAGE TypeOperators         #-}  ----------------------------------------------------------------------------- -- |@@ -17,30 +21,45 @@   , RTree   , toRTree -  -- * Internals+    -- * Backend API +  , renderDia+  , renderDiaT++    -- * Internals+   , toDTree   , fromDTree+  , styleToOutput+  , toOutput   )   where -import qualified Data.List.NonEmpty      as NEL-import           Data.Maybe              (fromMaybe)+import           Data.Data+import qualified Data.List.NonEmpty        as NEL+import           Data.Maybe                (fromMaybe) import           Data.Monoid.Coproduct import           Data.Monoid.MList-import           Data.Monoid.Split+import           Data.Monoid.WithSemigroup (Monoid') import           Data.Semigroup import           Data.Tree import           Data.Tree.DUAL+import           Data.VectorSpace+import           Diagrams.Core.Envelope    (OrderedField, diameter)+import           Diagrams.Core.Style import           Diagrams.Core.Transform import           Diagrams.Core.Types  emptyDTree :: Tree (DNode b v a) emptyDTree = Node DEmpty [] +uncurry3 :: (a -> b -> c -> r) -> (a, b, c) -> r+uncurry3 f (x, y, z) = f x y z+ -- | Convert a @QDiagram@ into a raw tree.-toDTree :: HasLinearMap v => QDiagram b v m -> Maybe (DTree b v Annotation)-toDTree (QD qd)+toDTree :: HasLinearMap v => Scalar v -> Scalar v -> QDiagram b v m+                          -> Maybe (DTree b v Annotation)+toDTree g n (QD qd)   = foldDUAL        -- Prims at the leaves.  We ignore the accumulated d-annotations@@ -56,7 +75,8 @@                -- the continuation, convert the result to a DTree, and                -- splice it in, adding a DDelay node to mark the point                -- of the splice.-               (Node DDelay . (:[]) . fromMaybe emptyDTree . toDTree . ($d))+               (Node DDelay . (:[]) . fromMaybe emptyDTree . toDTree g n+                            . ($ (d, g, n)) . uncurry3)       )        -- u-only leaves --> empty DTree. We don't care about the@@ -86,39 +106,32 @@       qd  -- | Convert a @DTree@ to an @RTree@ which can be used dirctly by backends.---   A @DTree@ includes nodes of type @DTransform (Split (Transformation v))@;---   in the @RTree@ the frozen part of the transform is put in a node of type---   @RFrozenTr (Transformation v)@ and the unfrozen part is pushed down until---   it is either frozen or reaches a primitive node.+--   A @DTree@ includes nodes of type @DTransform (Transformation v)@;+--   in the @RTree@ transform is pushed down until it reaches a primitive node. fromDTree :: HasLinearMap v => DTree b v Annotation -> RTree b v Annotation fromDTree = fromDTree' mempty   where     fromDTree' :: HasLinearMap v => Transformation v -> DTree b v Annotation -> RTree b v Annotation-    -- We put the accumulated unfrozen transformation (accTr) and the prim+    -- We put the accumulated transformation (accTr) and the prim     -- into an RPrim node.     fromDTree' accTr (Node (DPrim p) _)-      = Node (RPrim accTr p) []+      = Node (RPrim (transform accTr p)) []      -- Styles are transformed then stored in their own node     -- and accTr is push down the tree.     fromDTree' accTr (Node (DStyle s) ts)       = Node (RStyle (transform accTr s)) (fmap (fromDTree' accTr) ts) -    -- Unfrozen transformations are accumulated and pushed down as well.-    fromDTree' accTr (Node (DTransform (M tr)) ts)+    -- Transformations are accumulated and pushed down as well.+    fromDTree' accTr (Node (DTransform tr) ts)       = Node REmpty (fmap (fromDTree' (accTr <> tr)) ts) -    -- Frozen transformations are stored in the RFrozenTr node-    -- and accTr is reset to the unfrozen part of the transform.-    fromDTree' accTr (Node (DTransform (tr1 :| tr2)) ts)-      = Node (RFrozenTr (accTr <> tr1)) (fmap (fromDTree' tr2) ts)-     fromDTree' accTr (Node (DAnnot a) ts)       = Node (RAnnot a) (fmap (fromDTree' accTr) ts)      -- Drop accumulated transformations upon encountering a DDelay     -- node --- the tree unfolded beneath it already took into account-    -- any non-frozen transformation at this point.+    -- any transformation at this point.     fromDTree' _ (Node DDelay ts)       = Node REmpty (fmap (fromDTree' mempty) ts) @@ -126,7 +139,94 @@     fromDTree' accTr (Node _ ts)       = Node REmpty (fmap (fromDTree' accTr) ts) --- | Compile a @QDiagram@ into an 'RTree'.  Suitable for use by---   backends when implementing 'renderData'.-toRTree :: HasLinearMap v => QDiagram b v m -> RTree b v Annotation-toRTree = fromDTree . fromMaybe (Node DEmpty []) . toDTree+-- | Compile a @QDiagram@ into an 'RTree', rewriting styles with the+--   given function along the way.  Suitable for use by backends when+--   implementing 'renderData'.  The first argument is the+--   transformation used to convert the diagram from local to output+--   units.+toRTree+  :: (HasLinearMap v, InnerSpace v, Data v, Data (Scalar v), OrderedField (Scalar v), Monoid m, Semigroup m)+  => Transformation v -> QDiagram b v m -> RTree b v Annotation+toRTree globalToOutput d+  = (fmap . onRStyle) (styleToOutput gToO nToO)+  . fromDTree+  . fromMaybe (Node DEmpty [])+  . toDTree gToO nToO+  $ d+  where+    gToO = avgScale globalToOutput++    -- Scaling factor from normalized units to output units: nth root+    -- of product of diameters along each basis direction.  Note at+    -- this point the diagram has already had the globalToOutput+    -- transformation applied, so output = global = local units.+    nToO = product (map (\v -> diameter v d) basis) ** (1 / fromIntegral (dimension d))++-- | Apply a style transformation on 'RStyle' nodes; the identity for+--   other 'RNode's.+onRStyle :: (Style v -> Style v) -> (RNode b v a -> RNode b v a)+onRStyle f (RStyle s) = RStyle (f s)+onRStyle _ n          = n++-- | Convert all 'Measure' values to 'Output' units.  The arguments+--   are, respectively, the scaling factor from global units to output+--   units, and from normalized units to output units.  It is assumed+--   that local units are identical to output units (which will be the+--   case if all transformations have been fully pushed down and+--   applied). Normalized units are based on a logical diagram size of+--   1 x 1.+styleToOutput+  :: forall v. (Data v, Data (Scalar v), Num (Scalar v), Ord (Scalar v), Fractional (Scalar v))+  => Scalar v -> Scalar v -> Style v -> Style v+styleToOutput globalToOutput normToOutput =+  gmapAttrs (toOutput globalToOutput normToOutput :: Measure v -> Measure v)++-- | Convert an aribrary 'Measure' to 'Output' units.+toOutput :: forall v. (Data v, Data (Scalar v), Num (Scalar v), Ord (Scalar v), Fractional (Scalar v))+  => Scalar v -> Scalar v -> Measure v -> Measure v+toOutput g n m =+  case m of+     m'@(Output _) -> m'+     Local s       -> Output s+     Global s      -> Output (g * s)+     Normalized s  -> Output (n * s)++     MinM m1 m2    -> outBin min (toOutput g n m1) (toOutput g n m2)+     MaxM m1 m2    -> outBin max (toOutput g n m1) (toOutput g n m2)+     ZeroM         -> Output 0+     NegateM m'    -> outUn negate (toOutput g n m')+     PlusM m1 m2   -> outBin (+) (toOutput g n m1) (toOutput g n m2)+     ScaleM s m'   -> outUn (s*) (toOutput g n m')+  where+    outUn  op (Output o1)             = Output (op o1)+    outUn  _  _ = error "outUn: The sky is falling!"+    outBin op (Output o1) (Output o2) = Output (o1 `op` o2)+    outBin _ _ _ = error "outBin: Both skies are falling!"+++--------------------------------------------------++-- | Render a diagram, returning also the transformation which was+--   used to convert the diagram from its (\"global\") coordinate+--   system into the output coordinate system.  The inverse of this+--   transformation can be used, for example, to convert output/screen+--   coordinates back into diagram coordinates.  See also 'adjustDia'.+renderDiaT+  :: ( Backend b v+     , HasLinearMap v, InnerSpace v, Data v+     , OrderedField (Scalar v), Data (Scalar v)+     , Monoid' m+     )+  => b -> Options b v -> QDiagram b v m -> (Transformation v, Result b v)+renderDiaT b opts d = (g2o, renderRTree b opts' . toRTree g2o $ d')+  where (opts', g2o, d') = adjustDia b opts d++-- | Render a diagram.+renderDia+  :: ( Backend b v+     , InnerSpace v, Data v+     , OrderedField (Scalar v), Data (Scalar v)+     , Monoid' m+     )+          => b -> Options b v -> QDiagram b v m -> Result b v+renderDia b opts d = snd (renderDiaT b opts d)
src/Diagrams/Core/Envelope.hs view
@@ -3,9 +3,9 @@ {-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE MultiParamTypeClasses      #-} {-# LANGUAGE StandaloneDeriving         #-}+{-# LANGUAGE TemplateHaskell            #-} {-# LANGUAGE TypeFamilies               #-} {-# LANGUAGE UndecidableInstances       #-}-{-# LANGUAGE TemplateHaskell            #-} ----------------------------------------------------------------------------- -- | -- Module      :  Graphics.Rendering.Diagrams.Envelope@@ -36,6 +36,7 @@          -- * Utility functions        , diameter        , radius+       , extent        , envelopeVMay, envelopeV, envelopePMay, envelopeP, envelopeSMay, envelopeS           -- * Miscellaneous@@ -43,8 +44,8 @@        ) where  import           Control.Applicative     ((<$>))-import           Control.Lens (Wrapped(..), Rewrapped, iso, over, mapped-                              , _Wrapping', op)+import           Control.Lens            (Rewrapped, Wrapped (..), iso, mapped,+                                          op, over, _Wrapping') import qualified Data.Map                as M import           Data.Maybe              (fromMaybe) import           Data.Semigroup@@ -255,11 +256,16 @@ -- | Compute the diameter of a enveloped object along a particular --   vector.  Returns zero for the empty envelope. diameter :: Enveloped a => V a -> a -> Scalar (V a)-diameter v a = case appEnvelope $ getEnvelope a of-  (Just env) -> (env v + env (negateV v)) * magnitude v-  Nothing -> 0+diameter v a = maybe 0 (\(lo,hi) -> (hi - lo) * magnitude v) (extent v a)  -- | Compute the \"radius\" (1\/2 the diameter) of an enveloped object --   along a particular vector. radius :: Enveloped a => V a -> a -> Scalar (V a) radius v = (0.5*) . diameter v++-- | Compute the range of an enveloped object along a certain+--   direction.  Returns a pair of scalars @(lo,hi)@ such that the+--   object extends from @(lo *^ v)@ to @(hi *^ v)@. Returns @Nothing@+--   for objects with an empty envelope.+extent :: Enveloped a => V a -> a -> Maybe (Scalar (V a), Scalar (V a))+extent v a = (\f -> (-f (negateV v), f v)) <$> (appEnvelope . getEnvelope $ a)
src/Diagrams/Core/Points.hs view
@@ -1,5 +1,7 @@-{-# LANGUAGE TypeFamilies-  #-}+{-# LANGUAGE FlexibleContexts #-}+{-# LANGUAGE RankNTypes #-}+{-# LANGUAGE TypeFamilies #-}+ ----------------------------------------------------------------------------- -- | -- Module      :  Diagrams.Core.Points@@ -15,14 +17,24 @@        ( -- * Points           Point(..), origin, (*.)+       , _relative         ) where --- We just import from Data.AffineSpace.Point (defined in the+-- We import from Data.AffineSpace.Point (defined in the -- vector-space-points package) and re-export.  We also define an -- instance of V for Point here.++import Control.Lens (Iso', iso)+ import Data.AffineSpace.Point+import Data.AffineSpace  import Diagrams.Core.V  type instance V (Point v) = v++-- | An isomorphism between points and vectors, given a reference+-- point.  This is provided for defining new lenses on points.+_relative :: AffineSpace (Point v) => Point v -> Iso' (Point v) v+_relative p0 = iso (.-. p0) (p0 .+^)
src/Diagrams/Core/Style.hs view
@@ -1,12 +1,13 @@-{-# LANGUAGE ScopedTypeVariables-           , GADTs-           , KindSignatures-           , FlexibleInstances-           , MultiParamTypeClasses-           , TemplateHaskell-           , TypeFamilies-           , UndecidableInstances-  #-}+{-# LANGUAGE DeriveDataTypeable    #-}+{-# LANGUAGE FlexibleInstances     #-}+{-# LANGUAGE GADTs                 #-}+{-# LANGUAGE KindSignatures        #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE Rank2Types            #-}+{-# LANGUAGE ScopedTypeVariables   #-}+{-# LANGUAGE TemplateHaskell       #-}+{-# LANGUAGE TypeFamilies          #-}+{-# LANGUAGE UndecidableInstances  #-}  -- The UndecidableInstances flag is needed under 6.12.3 for the -- HasStyle (a,b) instance.@@ -29,28 +30,31 @@           AttributeClass        , Attribute(..)-       , mkAttr, mkTAttr, unwrapAttr-       , applyAttr, applyTAttr+       , mkAttr, mkTAttr, mkGTAttr, unwrapAttr+       , applyAttr, applyTAttr, applyGTAttr           -- * Styles          -- $style         , Style(..)-       , attrToStyle, tAttrToStyle+       , attrToStyle, tAttrToStyle, gtAttrToStyle        , getAttr, setAttr, addAttr, combineAttr+       , gmapAttrs         , HasStyle(..)         ) where -import           Control.Arrow ((***))-import           Control.Lens (Wrapped(..), Rewrapped, iso)-import qualified Data.Map as M+import           Control.Arrow           ((***))+import           Control.Lens            (Rewrapped, Wrapped (..), iso, (%~),+                                          (&))+import           Data.Data+import           Data.Data.Lens          (template)+import qualified Data.Map                as M import           Data.Semigroup-import qualified Data.Set as S-import           Data.Typeable+import qualified Data.Set                as S -import Data.Monoid.Action+import           Data.Monoid.Action  import           Diagrams.Core.Transform import           Diagrams.Core.V@@ -82,11 +86,21 @@ class (Typeable a, Semigroup a) => AttributeClass a where  -- | An existential wrapper type to hold attributes.  Some attributes---   are affected by transformations and some are not.+--   are simply inert/static; some are affected by transformations;+--   and some are affected by transformations and can be modified+--   generically. data Attribute v :: * where-  Attribute  :: AttributeClass a => a -> Attribute v-  TAttribute :: (AttributeClass a, Transformable a, V a ~ v) => a -> Attribute v+  Attribute   :: AttributeClass a => a -> Attribute v+  TAttribute  :: (AttributeClass a, Transformable a, V a ~ v) => a -> Attribute v+  GTAttribute :: (AttributeClass a, Data a, Transformable a, V a ~ v) => a -> Attribute v +  -- Note: one could imagine requiring all attributes to be generic,+  -- but adding Data instances for everything would be a big pain in+  -- the butt, especially for things in other packages which don't+  -- export their constructors (e.g. FingerTree).  Having three+  -- different attribute wrappers is not ideal but it's far less work+  -- than the alternative.+ type instance V (Attribute v) = v  -- | Wrap up an attribute.@@ -97,14 +111,19 @@ mkTAttr :: (AttributeClass a, Transformable a, V a ~ v) => a -> Attribute v mkTAttr = TAttribute +-- | Wrap up a transformable and generic attribute.+mkGTAttr :: (AttributeClass a, Data a, Transformable a, V a ~ v) => a -> Attribute v+mkGTAttr = GTAttribute+ -- | Unwrap an unknown 'Attribute' type, performing a dynamic (but --   safe) check on the type of the result.  If the required type --   matches the type of the attribute, the attribute value is --   returned wrapped in @Just@; if the types do not match, @Nothing@ --   is returned. unwrapAttr :: AttributeClass a => Attribute v -> Maybe a-unwrapAttr (Attribute a)  = cast a-unwrapAttr (TAttribute a) = cast a+unwrapAttr (Attribute a)   = cast a+unwrapAttr (TAttribute a)  = cast a+unwrapAttr (GTAttribute a) = cast a  -- | Attributes form a semigroup, where the semigroup operation simply --   returns the right-hand attribute when the types do not match, and@@ -119,10 +138,15 @@     case unwrapAttr a2 of       Nothing  -> a2       Just a2' -> TAttribute (a1 <> a2')+  (GTAttribute a1) <> a2 =+    case unwrapAttr a2 of+      Nothing -> a2+      Just a2' -> GTAttribute (a1 <> a2')  instance HasLinearMap v => Transformable (Attribute v) where-  transform _ (Attribute  a) = Attribute a-  transform t (TAttribute a) = TAttribute (transform t a)+  transform _ (Attribute  a)  = Attribute a+  transform t (TAttribute a)  = TAttribute (transform t a)+  transform t (GTAttribute a) = GTAttribute (transform t a)  ------------------------------------------------------------ --  Styles  ------------------------------------------------@@ -170,6 +194,10 @@ tAttrToStyle :: forall a v. (AttributeClass a, Transformable a, V a ~ v) => a -> Style v tAttrToStyle a = Style (M.singleton (show . typeOf $ (undefined :: a)) (mkTAttr a)) +-- | Create a style from a single transformable, generic attribute.+gtAttrToStyle :: forall a v. (AttributeClass a, Data a, Transformable a, V a ~ v) => a -> Style v+gtAttrToStyle a = Style (M.singleton (show . typeOf $ (undefined :: a)) (mkGTAttr a))+ -- | Add a new attribute to a style, or replace the old attribute of --   the same type if one exists. setAttr :: forall a v. AttributeClass a => a -> Style v -> Style v@@ -189,6 +217,17 @@     Nothing -> setAttr a s     Just a' -> setAttr (a <> a') s +-- | Map generically over all generic attributes in a style, applying+--   the given function to any values with the given type, even deeply+--   nested ones.  Note that only attributes wrapped in 'GTAttribute'+--   are affected.+gmapAttrs :: forall v a. Typeable a => (a -> a) -> Style v -> Style v+gmapAttrs f = (inStyle . M.map) gmapAttr+  where+    gmapAttr :: Attribute v -> Attribute v+    gmapAttr (GTAttribute a) = GTAttribute (a & template %~ f)+    gmapAttr a = a+ instance Semigroup (Style v) where   Style s1 <> Style s2 = Style $ M.unionWith (<>) s1 s2 @@ -245,3 +284,6 @@ --   structure. applyTAttr :: (AttributeClass a, Transformable a, V a ~ V d, HasStyle d) => a -> d -> d applyTAttr = applyStyle . tAttrToStyle++applyGTAttr :: (AttributeClass a, Data a, Transformable a, V a ~ V d, HasStyle d) => a -> d -> d+applyGTAttr = applyStyle . gtAttrToStyle
src/Diagrams/Core/Trace.hs view
@@ -383,13 +383,13 @@ -- > pointB = 1 ^& 1.2 -- > pointC = 2.5 ^& 3.5 -- >--- > dot = circle 0.05 # lw 0+-- > dot = circle 0.05 # lw none -- > -- > mkTraceDia :: TraceDiaOpts -> Diagram B R2 -- > mkTraceDia tdo = mconcat -- >   [ mconcat $ map (place (dot # fc red)) pts -- >   , if drawV tdo then resultArrow else mempty--- >   , arrowAt (basePt tdo) (dirV tdo) # lw 0.02 # lc blue+-- >   , arrowAt (basePt tdo) (dirV tdo) # lc blue -- >   , dot # fc blue # moveTo (basePt tdo) -- >   , traceLine (basePt tdo) maxPosPt -- >   , traceLine (basePt tdo) minNegPt@@ -405,7 +405,7 @@ -- >     minNegPt = (mkPt <$>) . safeHead $ filter (<0) ss -- >     minPt = (mkPt <$>) . safeHead $ ss -- >     resultArrow = fromMaybe mempty (arrowBetween (basePt tdo) <$> minPt)--- >       # lw 0.03 # lc green+-- >       # lc green -- > -- > safeLast [] = Nothing -- > safeLast xs = Just $ last xs@@ -415,7 +415,7 @@ -- > dropAllBut1 xs = [last xs] -- > -- > traceLine _ Nothing = mempty--- > traceLine p (Just q) = (p ~~ q) # dashing [0.1,0.1] 0+-- > traceLine p (Just q) = (p ~~ q) # dashingG [0.1,0.1] 0 -- > -- > mkTraceDias :: [TraceDiaOpts] -> Diagram B R2 -- > mkTraceDias = hcat' (with & sep .~ 1) . map mkTraceDia
src/Diagrams/Core/Transform.hs view
@@ -37,13 +37,18 @@          -- ** General transformations        , Transformation(..)        , inv, transp, transl+       , dropTransl        , apply        , papply        , fromLinear        , basis+       , dimension        , onBasis+       , listRep        , matrixRep+       , matrixHomRep        , determinant+       , avgScale           -- * The Transformable class @@ -159,6 +164,11 @@ transl :: Transformation v -> v transl (Transformation _ _ v) = v +-- | Drop the translational component of a transformation, leaving only+--   the linear part.+dropTransl :: AdditiveGroup v => Transformation v -> Transformation v+dropTransl (Transformation a a' _) = Transformation a a' zeroV+ -- | Transformations are closed under composition; @t1 <> t2@ is the --   transformation which performs first @t2@, then @t1@. instance HasLinearMap v => Semigroup (Transformation v) where@@ -195,6 +205,12 @@ basis :: forall v. HasLinearMap v => [v] basis = map basisValue b   where b = map fst (decompose (zeroV :: v))++-- | Get the dimension of an object whose vector space is an instance of+--   @HasLinearMap@, e.g. transformations, paths, diagrams, etc.+dimension :: forall a. HasLinearMap (V a) => a -> Int+dimension _ = length (decompose (zeroV :: V a))+ -- | Get the matrix equivalent of the linear transform, --   (as a list of columns) and the translation vector.  This --   is mostly useful for implementing backends.@@ -223,15 +239,56 @@     c1 = head m     n = length m +-- | Convert a vector v to a list of scalars.+listRep :: HasLinearMap v => v -> [Scalar v]+listRep v = map snd (decompose v)+ -- | Convert a `Transformation v` to a matrix representation as a list of --   column vectors which are also lists. matrixRep :: HasLinearMap v => Transformation v -> [[Scalar v]] matrixRep t = map listRep (fst . onBasis $ t)-  where listRep v = map snd (decompose v) +-- | Convert a `Transformation v` to a homogeneous matrix representation.+--   The final list is the translation.+--   The representation leaves off the last row of the matrix as it is+--   always [0,0, ... 1] and this representation is the defacto standard+--   for backends.+matrixHomRep :: HasLinearMap v => Transformation v -> [[Scalar v]]+matrixHomRep t = mr ++ [listRep tl]+  where+    mr = matrixRep t+    tl = transl t+ -- | The determinant of a `Transformation`. determinant :: (HasLinearMap v, Num (Scalar v)) => Transformation v -> Scalar v determinant t = det . matrixRep $ t++-- | Compute the \"average\" amount of scaling performed by a+--   transformation.  Satisfies the properties+--+--   @+--   avgScale (scaling k) == k+--   avgScale (t1 <> t2)  == avgScale t1 * avgScale t2+--   @+--+avgScale :: (HasLinearMap v, Floating (Scalar v)) => Transformation v -> Scalar v+avgScale t = (abs . determinant $ t) ** (1 / fromIntegral (dimension t))++{-++avgScale is computed as the nth root of the positive determinant.+This works because the determinant is the factor by which a transformation+scales area/volume. See http://en.wikipedia.org/wiki/Determinant.++Proofs for the specified properties:++1. |det (scaling k)|^(1/n) = (k^n)^(1/n) = k+2. |det t1|^(1/n) * |det t2|^(1/n)+   = (|det t1| * |det t2|)^(1/n)+   = |det t1 * det t2|^(1/n)+   = |det (t1 <> t2)|^(1/n)++-}  ------------------------------------------------------------ --  The Transformable class  -------------------------------
src/Diagrams/Core/Types.hs view
@@ -8,6 +8,7 @@ {-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE MultiParamTypeClasses      #-} {-# LANGUAGE ScopedTypeVariables        #-}+{-# LANGUAGE StandaloneDeriving         #-} {-# LANGUAGE TupleSections              #-} {-# LANGUAGE TypeFamilies               #-} {-# LANGUAGE TypeOperators              #-}@@ -62,7 +63,6 @@        , mkQD, mkQD', pointDiagram           -- ** Extracting information-       , prims        , envelope, trace, subMap, names, query, sample        , value, resetValue, clearValue @@ -83,10 +83,14 @@        , localize           -- *** Other-       , freeze        , setEnvelope        , setTrace +         -- * Measurements+       , Measure(..)+       , fromOutput+       , atMost, atLeast+          -- * Subdiagrams         , Subdiagram(..), mkSubdiagram@@ -103,12 +107,11 @@          -- * Primtives          -- $prim -       , Prim(..), IsPrim(..), nullPrim+       , Prim(..)           -- * Backends         , Backend(..)-       , MultiBackend(..)        , DNode(..)        , DTree        , RNode(..)@@ -130,20 +133,19 @@                                             _Wrapping) import           Control.Monad             (mplus) import           Data.AffineSpace          ((.-.))+import           Data.Data import           Data.List                 (isSuffixOf) import qualified Data.Map                  as M import           Data.Maybe                (fromMaybe, listToMaybe) import           Data.Semigroup import qualified Data.Traversable          as T import           Data.Tree-import           Data.Typeable import           Data.VectorSpace  import           Data.Monoid.Action import           Data.Monoid.Coproduct import           Data.Monoid.Deletable import           Data.Monoid.MList-import           Data.Monoid.Split import           Data.Monoid.WithSemigroup import qualified Data.Tree.DUAL            as D @@ -162,6 +164,93 @@ -- documentation!  Haddock supports \<\<inline image urls\>\>.  ------------------------------------------------------------+--  Measurement Units  -------------------------------------+------------------------------------------------------------+-- | Type of measurement units for attributes.+data Measure v = Output (Scalar v)+               | Normalized (Scalar v)+               | Local (Scalar v)+               | Global (Scalar v)++               | MinM (Measure v) (Measure v)+               | MaxM (Measure v) (Measure v)+               | ZeroM+               | NegateM (Measure v)+               | PlusM (Measure v) (Measure v)+               | ScaleM (Scalar v) (Measure v)+  deriving (Typeable)++deriving instance (Eq (Scalar v)) => Eq (Measure v)+deriving instance (Ord (Scalar v)) => Ord (Measure v)+deriving instance (Show (Scalar v)) => Show (Measure v)+deriving instance (Typeable v, Data v, Data (Scalar v)) => Data (Measure v)++-- | Compute the larger of two 'Measure's.  Useful for setting lower+--   bounds.+atLeast :: Measure v -> Measure v -> Measure v+atLeast = MaxM++-- | Compute the smaller of two 'Measure's.  Useful for setting upper+--   bounds.+atMost :: Measure v -> Measure v -> Measure v+atMost = MinM++instance AdditiveGroup (Measure v) where+  zeroV = ZeroM+  negateV (NegateM m) = m+  negateV m = NegateM m+  ZeroM ^+^ m = m+  m ^+^ ZeroM = m+  m1 ^+^ m2 = PlusM m1 m2++instance VectorSpace (Measure v) where+  type Scalar (Measure v) = Scalar v+  s *^ m = ScaleM s m++type instance V (Measure v) = v++instance (HasLinearMap v, Floating (Scalar v)) => Transformable (Measure v) where+  transform tr (Local x) = Local (avgScale tr * x)+  transform _ y = y++-- | Retrieve the 'Output' value of a 'Measure v' or throw an exception.+--   Only 'Ouput' measures should be left in the 'RTree' passed to the backend.+fromOutput :: Measure v -> Scalar v+fromOutput (Output w)     = w+fromOutput (Normalized _) = fromOutputErr "Normalized"+fromOutput (Local _)      = fromOutputErr "Local"+fromOutput (Global _)     = fromOutputErr "Global"+fromOutput (MinM _ _)     = fromOutputErr "MinM"+fromOutput (MaxM _ _)     = fromOutputErr "MaxM"+fromOutput (ZeroM)        = fromOutputErr "ZeroM"+fromOutput (NegateM _)    = fromOutputErr "NegateM"+fromOutput (PlusM _ _)    = fromOutputErr "PlusM"+fromOutput (ScaleM _ _)   = fromOutputErr "ScaleM"++fromOutputErr :: String -> a+fromOutputErr s = error $ "fromOutput: Cannot pass " ++ s ++ " to backends, must be Output."++--   Eventually we may use a GADT like:+--+--     data Measure o v where+--       Output     :: Scalar v -> Measure O v+--       Normalized :: Scalar v -> Measure A v+--       Global     :: Scalar v -> Measure A v+--       Local      :: Scale v  -> Measure A v+--+--   to check this at compile time. But for now we throw a runtime error.+--+--   [BAY 4 April 2014] I tried switching to such a GADT.  One tricky+--   bit is that you have to use Output :: Scalar v -> Measure o v,+--   not Measure O v: the reason is that operations like addition have+--   to take two values of the same type, so in order to be able to+--   add Output to something else, Output must be able to have an A+--   annotation.  That all works fine.  The problem is with gmapAttrs,+--   which has to preserve type: so we can't generically convert from+--   Measure A to Measure O.+++------------------------------------------------------------ --  Diagrams  ---------------------------------------------- ------------------------------------------------------------ @@ -190,13 +279,10 @@ --   /i.e./ which accumulate along each path to a leaf (and which can --   act on the upwards-travelling annotations): -----   * transformations (split at the innermost freeze): see---     "Diagrams.Core.Transform"--- --   * styles (see "Diagrams.Core.Style") -- --   * names (see "Diagrams.Core.Names")-type DownAnnots v = (Split (Transformation v) :+: Style v)+type DownAnnots v = (Transformation v :+: Style v)                 ::: Name                 ::: () @@ -209,13 +295,12 @@ transfToAnnot :: Transformation v -> DownAnnots v transfToAnnot   = inj-  . (inL :: Split (Transformation v) -> Split (Transformation v) :+: Style v)-  . M+  . (inL :: Transformation v -> Transformation v :+: Style v)  -- | Extract the (total) transformation from a downwards annotation --   value. transfFromAnnot :: HasLinearMap v => DownAnnots v -> Transformation v-transfFromAnnot = option mempty (unsplit . killR) . fst+transfFromAnnot = option mempty killR . fst  -- | A leaf in a 'QDiagram' tree is either a 'Prim', or a \"delayed\" --   @QDiagram@ which expands to a real @QDiagram@ once it learns the@@ -225,18 +310,18 @@ --   scale-invariant). data QDiaLeaf b v m   = PrimLeaf (Prim b v)-  | DelayedLeaf (DownAnnots v -> QDiagram b v m)+  | DelayedLeaf (DownAnnots v -> Scalar v -> Scalar v -> QDiagram b v m)     -- ^ The @QDiagram@ produced by a @DelayedLeaf@ function /must/-    --   already apply any non-frozen transformation in the given-    --   @DownAnnots@ (that is, the non-frozen transformation will not-    --   be applied by the context). On the other hand, it must assume-    --   that any frozen transformation or attributes will be applied-    --   by the context.+    --   already apply any transformation in the given+    --   @DownAnnots@ (that is, the transformation will not+    --   be applied by the context).   deriving (Functor) -withQDiaLeaf :: (Prim b v -> r) -> ((DownAnnots v -> QDiagram b v m) -> r) -> (QDiaLeaf b v m -> r)+withQDiaLeaf :: (Prim b v -> r)+            -> ((DownAnnots v -> Scalar v -> Scalar v -> QDiagram b v m) -> r)+            -> (QDiaLeaf b v m -> r) withQDiaLeaf f _ (PrimLeaf p)    = f p-withQDiaLeaf _ g (DelayedLeaf d) = g d+withQDiaLeaf _ g (DelayedLeaf dgn) = g dgn  -- | Static annotations which can be placed at a particular node of a --   diagram tree.@@ -286,17 +371,6 @@              => Point v -> QDiagram b v m pointDiagram p = QD $ D.leafU (inj . toDeletable $ pointEnvelope p) --- | Extract a list of primitives from a diagram, together with their---   associated transformations and styles.-prims :: HasLinearMap v-      => QDiagram b v m -> [(Prim b v, (Split (Transformation v), Style v))]-prims = concatMap processLeaf-      . D.flatten-      . view _Wrapped'-  where-    processLeaf (PrimLeaf p, (trSty,_)) = [(p, untangle . option mempty id $ trSty)]-    processLeaf (DelayedLeaf k, d)      = prims (k d)- -- | A useful variant of 'getU' which projects out a certain --   component. getU' :: (Monoid u', u :>: u') => D.DUALTree d u a l -> u'@@ -520,30 +594,7 @@ instance (HasLinearMap v, InnerSpace v, OrderedField (Scalar v), Semigroup m)       => HasStyle (QDiagram b v m) where   applyStyle = over _Wrapped' . D.applyD . inj-             . (inR :: Style v -> Split (Transformation v) :+: Style v)---- | By default, diagram attributes are not affected by---   transformations.  This means, for example, that @lw 0.01 circle@---   and @scale 2 (lw 0.01 circle)@ will be drawn with lines of the---   /same/ width, and @scaleY 3 circle@ will be an ellipse drawn with---   a uniform line.  Once a diagram is frozen, however,---   transformations do affect attributes, so, for example, @scale 2---   (freeze (lw 0.01 circle))@ will be drawn with a line twice as---   thick as @lw 0.01 circle@, and @scaleY 3 (freeze circle)@ will be---   drawn with a \"stretched\", variable-width line.------   Another way of thinking about it is that pre-@freeze@, we are---   transforming the \"abstract idea\" of a diagram, and the---   transformed version is then drawn; when doing a @freeze@, we---   produce a concrete drawing of the diagram, and it is this visual---   representation itself which is acted upon by subsequent---   transformations.-freeze :: forall v b m. (HasLinearMap v, InnerSpace v-                        , OrderedField (Scalar v), Semigroup m)-       => QDiagram b v m -> QDiagram b v m-freeze = over _Wrapped' . D.applyD . inj-       . (inL :: Split (Transformation v) -> Split (Transformation v) :+: Style v)-       $ split+             . (inR :: Style v -> Transformation v :+: Style v)  ---- Juxtaposable @@ -754,31 +805,19 @@ ------------------------------------------------------------  -- $prim--- Ultimately, every diagram is essentially a list of /primitives/,+-- Ultimately, every diagram is essentially a tree whose leaves are /primitives/, -- basic building blocks which can be rendered by backends.  However, -- not every backend must be able to render every type of primitive; -- the collection of primitives a given backend knows how to render is -- determined by instances of 'Renderable'. --- | A type class for primitive things which know how to handle being---   transformed by both a normal transformation and a \"frozen\"---   transformation.  The default implementation simply applies both.---   At the moment, 'ScaleInv' is the only type with a non-default---   instance of 'IsPrim'.-class Transformable p => IsPrim p where-  transformWithFreeze :: Transformation (V p) -> Transformation (V p) -> p -> p-  transformWithFreeze t1 t2 = transform (t1 <> t2)- -- | A value of type @Prim b v@ is an opaque (existentially quantified) --   primitive which backend @b@ knows how to render in vector space @v@. data Prim b v where-  Prim :: (IsPrim p, Typeable p, Renderable p b) => p -> Prim b (V p)+  Prim :: (Transformable p, Typeable p, Renderable p b) => p -> Prim b (V p)  type instance V (Prim b v) = v -instance HasLinearMap v => IsPrim (Prim b v) where-  transformWithFreeze t1 t2 (Prim p) = Prim $ transformWithFreeze t1 t2 p- -- | The 'Transformable' instance for 'Prim' just pushes calls to --   'transform' down through the 'Prim' constructor. instance HasLinearMap v => Transformable (Prim b v) where@@ -789,31 +828,12 @@ instance HasLinearMap v => Renderable (Prim b v) b where   render b (Prim p) = render b p --- | The null primitive.-data NullPrim v = NullPrim-  deriving Typeable--type instance (V (NullPrim v)) = v--instance HasLinearMap v => IsPrim (NullPrim v)--instance HasLinearMap v => Transformable (NullPrim v) where-  transform _ _ = NullPrim--instance (HasLinearMap v, Monoid (Render b v)) => Renderable (NullPrim v) b where-  render _ _ = mempty---- | The null primitive, which every backend can render by doing---   nothing.-nullPrim :: (HasLinearMap v, Typeable v, Monoid (Render b v)) => Prim b v-nullPrim = Prim NullPrim- ------------------------------------------------------------ -- Backends  ----------------------------------------------- ------------------------------------------------------------  data DNode b v a = DStyle (Style v)-                 | DTransform (Split (Transformation v))+                 | DTransform (Transformation v)                  | DAnnot a                  | DDelay                    -- ^ @DDelay@ marks a point where a delayed subtree@@ -834,47 +854,36 @@  data RNode b v a =  RStyle (Style v)                     -- ^ A style node.-                  | RFrozenTr (Transformation v)-                    -- ^ A \"frozen\" transformation, /i.e./ one which-                    --   was applied after a call to 'freeze'.  It-                    --   applies to everything below it in the tree.-                    --   Note that line width and other similar-                    --   \"scale invariant\" attributes should be-                    --   affected by this transformation.  In the case-                    --   of 2D, some backends may not support stroking-                    --   in the context of an arbitrary-                    --   transformation; such backends can instead use-                    --   the 'avgScale' function from-                    --   @Diagrams.TwoD.Transform@ (from the-                    --   @diagrams-lib@ package).                   | RAnnot a-                  | RPrim (Transformation v) (Prim b v)-                    -- ^ A primitive, along with the (non-frozen)-                    --   transformation which applies to it.+                  | RPrim (Prim b v)+                    -- ^ A primitive.                   | REmpty  -- | An 'RTree' is a compiled and optimized representation of a---   'QDiagram', which can be used by backends.  They have several---   invariants which backends may rely upon:------   * All non-frozen transformations have been pushed all the way to---     the leaves.+--   'QDiagram', which can be used by backends.  They have the+--   following invariant which backends may rely upon: -- --   * @RPrim@ nodes never have any children. type RTree b v a = Tree (RNode b v a )  -- | Abstract diagrams are rendered to particular formats by --   /backends/.  Each backend/vector space combination must be an---   instance of the 'Backend' class. A minimal complete definition---   consists of the three associated types, an implementation for---   'doRender', and /one of/ either 'withStyle' or 'renderData'.-class (HasLinearMap v, Monoid (Render b v)) => Backend b v where+--   instance of the 'Backend' class.+--+--   A minimal complete definition consists of 'Render', 'Result',+--   'Options', and 'renderRTree'. However, most backends will want to+--   implement 'adjustDia' as well; the default definition does+--   nothing.  Some useful standard definitions are provided in the+--   @Diagrams.TwoD.Adjust@ module from the @diagrams-lib@ package.+class HasLinearMap v => Backend b v where -  -- | The type of rendering operations used by this backend, which-  --   must be a monoid. For example, if @Render b v = M ()@ for some-  --   monad @M@, a monoid instance can be made with @mempty = return-  --   ()@ and @mappend = (>>)@.-  data Render  b v :: *+  -- | An intermediate representation used for rendering primitives.+  --   (Typically, this will be some sort of monad, but it need not+  --   be.)  The 'Renderable' class guarantees that a backend will be+  --   able to convert primitives into this type; how these rendered+  --   primitives are combined into an ultimate 'Result' is completely+  --   up to the backend.+  data Render b v :: *    -- | The result of running/interpreting a rendering operation.   type Result  b v :: *@@ -882,62 +891,25 @@   -- | Backend-specific rendering options.   data Options b v :: * -  -- | Perform a rendering operation with a local style. The default-  --   implementation does nothing, and must be overridden by backends-  --   that do not override 'renderData'.-  withStyle      :: b          -- ^ Backend token (needed only for type inference)-                 -> Style v    -- ^ Style to use-                 -> Transformation v-                    -- ^ \"Frozen\" transformation; line width and-                    --   other similar \"scale invariant\" attributes-                    --   should be affected by this transformation.-                    --   In the case of 2D, some backends may not-                    --   support stroking in the context of an-                    --   arbitrary transformation; such backends can-                    --   instead use the 'avgScale' function from-                    --   @Diagrams.TwoD.Transform@ (from the-                    --   @diagrams-lib@ package).-                 -> Render b v -- ^ Rendering operation to run-                 -> Render b v -- ^ Rendering operation using the style locally-  withStyle _ _ _ r = r--  -- | 'doRender' is used to interpret rendering operations.-  doRender       :: b           -- ^ Backend token (needed only for type inference)-                 -> Options b v -- ^ Backend-specific collection of rendering options-                 -> Render b v  -- ^ Rendering operation to perform-                 -> Result b v  -- ^ Output of the rendering operation-   -- | 'adjustDia' allows the backend to make adjustments to the final   --   diagram (e.g. to adjust the size based on the options) before-  --   rendering it.  It can also make adjustments to the options-  --   record, usually to fill in incompletely specified size-  --   information.  A default implementation is provided which makes-  --   no adjustments.  See the diagrams-lib package for other useful-  --   implementations.-  adjustDia :: Monoid' m => b -> Options b v-            -> QDiagram b v m -> (Options b v, QDiagram b v m)-  adjustDia _ o d = (o,d)--  renderDia :: (InnerSpace v, OrderedField (Scalar v), Monoid' m)-            => b -> Options b v -> QDiagram b v m -> Result b v-  renderDia b opts d = doRender b opts' . renderData b $ d'-    where (opts', d') = adjustDia b opts d--  -- | Backends may override 'renderData' to gain more control over-  --   the way that rendering happens.  A typical implementation might be something like-  ---  --   > renderData = renderRTree . toRTree+  --   rendering it. It returns a modified options record, the+  --   transformation applied to the diagram (which can be used to+  --   convert attributes whose value is @Measure@, or transform+  --   /e.g./ screen coordinates back into local diagram coordinates),+  --   and the adjusted diagram itself.   ---  --   where @renderRTree :: RTree b v () -> Render b v@ is-  --   implemented by the backend (with appropriate types filled in-  --   for @b@ and @v@), and 'toRTree' is from "Diagrams.Core.Compile".-  renderData :: Monoid' m => b -> QDiagram b v m -> Render b v-  renderData b = mconcat . map renderOne . prims-    where-      renderOne :: (Prim b v, (Split (Transformation v), Style v)) -> Render b v-      renderOne (p, (M t,      s)) = withStyle b s mempty (render b (transform t p))-      renderOne (p, (t1 :| t2, s)) = withStyle b s t1 (render b (transformWithFreeze t1 t2 p))+  --   See the diagrams-lib package (particularly the+  --   @Diagrams.TwoD.Adjust@ module) for some useful implementations.+  adjustDia :: (Monoid' m, Num (Scalar v)) => b -> Options b v+            -> QDiagram b v m -> (Options b v, Transformation v, QDiagram b v m)+  adjustDia _ o d = (o,mempty,d) +  -- | Given some options, take a representation of a diagram as a+  --   tree and render it.  The 'RTree' has already been simplified+  --   and has all measurements converted to @Output@ units.+  renderRTree :: b -> Options b v -> RTree b v Annotation -> Result b v+   -- See Note [backend token]  -- | The @D@ type is provided for convenience in situations where you@@ -1040,19 +1012,7 @@   type Result NullBackend v = ()   data Options NullBackend v -  withStyle _ _ _ _ = NullBackendRender-  doRender _ _ _    = ()---- | A class for backends which support rendering multiple diagrams,---   e.g. to a multi-page pdf or something similar.-class Backend b v => MultiBackend b v where--  -- | Render multiple diagrams at once.-  renderDias :: (InnerSpace v, OrderedField (Scalar v), Monoid' m)-             => b -> Options b v -> [QDiagram b v m] -> Result b v--  -- See Note [backend token]-+  renderRTree _ _ _ = ()  -- | The Renderable type class connects backends to primitives which --   they know how to render.