hgeometry-ipe 0.9.0.0 → 0.10.0.0
raw patch · 6 files changed
+19/−11 lines, 6 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
- Data.Geometry.Ipe.FromIpe: instance Data.Geometry.Ipe.FromIpe.HasDefaultFromIpe (Data.Geometry.Polygon.MultiPolygon () r)
- Data.Geometry.Ipe.FromIpe: instance Data.Geometry.Ipe.FromIpe.HasDefaultFromIpe (Data.Geometry.Polygon.SimplePolygon () r)
- Data.Geometry.Ipe.IpeOut: instance Data.Geometry.Ipe.IpeOut.HasDefaultIpeOut (Data.Geometry.Polygon.Polygon t p r)
- Data.Geometry.Ipe.IpeOut: instance Data.Geometry.Ipe.IpeOut.HasDefaultIpeOut (Data.Geometry.Polygon.SomePolygon p r)
- Data.Geometry.Ipe.Types: instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Geometry.Ipe.Types.AttrMapSym1 r6989586621679276428)
- Data.Geometry.Ipe.Writer: instance Data.Geometry.Ipe.Writer.IpeWriteText r => Data.Geometry.Ipe.Writer.IpeWriteText (Data.Geometry.Polygon.Polygon t () r)
+ Data.Geometry.Ipe.FromIpe: instance Data.Geometry.Ipe.FromIpe.HasDefaultFromIpe (Data.Geometry.Polygon.Core.MultiPolygon () r)
+ Data.Geometry.Ipe.FromIpe: instance Data.Geometry.Ipe.FromIpe.HasDefaultFromIpe (Data.Geometry.Polygon.Core.SimplePolygon () r)
+ Data.Geometry.Ipe.IpeOut: instance Data.Geometry.Ipe.IpeOut.HasDefaultIpeOut (Data.Geometry.Polygon.Core.Polygon t p r)
+ Data.Geometry.Ipe.IpeOut: instance Data.Geometry.Ipe.IpeOut.HasDefaultIpeOut (Data.Geometry.Polygon.Core.SomePolygon p r)
+ Data.Geometry.Ipe.IpeOut: instance GHC.Num.Num r => Data.Geometry.Ipe.IpeOut.HasDefaultIpeOut (Data.Geometry.Box.Internal.Rectangle p r)
+ Data.Geometry.Ipe.IpeOut: ipeRectangle :: Num r => IpeOut (Rectangle p r) Path r
+ Data.Geometry.Ipe.Types: instance Data.Singletons.SuppressUnusedWarnings.SuppressUnusedWarnings (Data.Geometry.Ipe.Types.AttrMapSym1 r6989586621679226030)
+ Data.Geometry.Ipe.Writer: instance Data.Geometry.Ipe.Writer.IpeWriteText r => Data.Geometry.Ipe.Writer.IpeWriteText (Data.Geometry.Polygon.Core.Polygon t () r)
- Data.Geometry.Ipe.Attributes: arrowName :: forall r_aREE. Lens' (IpeArrow r_aREE) Text
+ Data.Geometry.Ipe.Attributes: arrowName :: forall r_aJLy. Lens' (IpeArrow r_aJLy) Text
- Data.Geometry.Ipe.Attributes: arrowSize :: forall r_aREE r_aTx3. Lens (IpeArrow r_aREE) (IpeArrow r_aTx3) (IpeSize r_aREE) (IpeSize r_aTx3)
+ Data.Geometry.Ipe.Attributes: arrowSize :: forall r_aJLy r_aLp3. Lens (IpeArrow r_aJLy) (IpeArrow r_aLp3) (IpeSize r_aJLy) (IpeSize r_aLp3)
- Data.Geometry.Ipe.Attributes: getAttr :: forall f_aPpc label_aPpd f_aRDY label_aRDZ. Iso (Attr f_aPpc label_aPpd) (Attr f_aRDY label_aRDZ) (Maybe (Apply f_aPpc label_aPpd)) (Maybe (Apply f_aRDY label_aRDZ))
+ Data.Geometry.Ipe.Attributes: getAttr :: forall f_aHyp label_aHyq f_aJKS label_aJKT. Iso (Attr f_aHyp label_aHyq) (Attr f_aJKS label_aJKT) (Maybe (Apply f_aHyp label_aHyq)) (Maybe (Apply f_aJKS label_aJKT))
- Data.Geometry.Ipe.Types: [AttrMapSym0KindInference] :: forall r6989586621679276428 arg_a17A8. SameKind (Apply AttrMapSym0 arg_a17A8) (AttrMapSym1 arg_a17A8) => AttrMapSym0 r6989586621679276428
+ Data.Geometry.Ipe.Types: [AttrMapSym0KindInference] :: forall r6989586621679226030 arg_aUpP. SameKind (Apply AttrMapSym0 arg_aUpP) (AttrMapSym1 arg_aUpP) => AttrMapSym0 r6989586621679226030
- Data.Geometry.Ipe.Types: [AttrMapSym1KindInference] :: forall r6989586621679276428 l6989586621679276429 arg_a17A7. SameKind (Apply (AttrMapSym1 r6989586621679276428) arg_a17A7) (AttrMapSym2 r6989586621679276428 arg_a17A7) => AttrMapSym1 r6989586621679276428 l6989586621679276429
+ Data.Geometry.Ipe.Types: [AttrMapSym1KindInference] :: forall r6989586621679226030 l6989586621679226031 arg_aUpO. SameKind (Apply (AttrMapSym1 r6989586621679226030) arg_aUpO) (AttrMapSym2 r6989586621679226030 arg_aUpO) => AttrMapSym1 r6989586621679226030 l6989586621679226031
- Data.Geometry.Ipe.Types: _ArcSegment :: forall r_a16J0. Prism' (PathSegment r_a16J0) ()
+ Data.Geometry.Ipe.Types: _ArcSegment :: forall r_aTIE. Prism' (PathSegment r_aTIE) ()
- Data.Geometry.Ipe.Types: _ArcTo :: forall r_a17bC. Prism' (Operation r_a17bC) (Matrix 3 3 r_a17bC, Point 2 r_a17bC)
+ Data.Geometry.Ipe.Types: _ArcTo :: forall r_aU4K. Prism' (Operation r_aU4K) (Matrix 3 3 r_aU4K, Point 2 r_aU4K)
- Data.Geometry.Ipe.Types: _ClosePath :: forall r_a17bC. Prism' (Operation r_a17bC) ()
+ Data.Geometry.Ipe.Types: _ClosePath :: forall r_aU4K. Prism' (Operation r_aU4K) ()
- Data.Geometry.Ipe.Types: _ClosedSpline :: forall r_a17bC. Prism' (Operation r_a17bC) [Point 2 r_a17bC]
+ Data.Geometry.Ipe.Types: _ClosedSpline :: forall r_aU4K. Prism' (Operation r_aU4K) [Point 2 r_aU4K]
- Data.Geometry.Ipe.Types: _ClosedSplineSegment :: forall r_a16J0. Prism' (PathSegment r_a16J0) ()
+ Data.Geometry.Ipe.Types: _ClosedSplineSegment :: forall r_aTIE. Prism' (PathSegment r_aTIE) ()
- Data.Geometry.Ipe.Types: _CubicBezierSegment :: forall r_a16J0. Prism' (PathSegment r_a16J0) ()
+ Data.Geometry.Ipe.Types: _CubicBezierSegment :: forall r_aTIE. Prism' (PathSegment r_aTIE) ()
- Data.Geometry.Ipe.Types: _CurveTo :: forall r_a17bC. Prism' (Operation r_a17bC) (Point 2 r_a17bC, Point 2 r_a17bC, Point 2 r_a17bC)
+ Data.Geometry.Ipe.Types: _CurveTo :: forall r_aU4K. Prism' (Operation r_aU4K) (Point 2 r_aU4K, Point 2 r_aU4K, Point 2 r_aU4K)
- Data.Geometry.Ipe.Types: _Ellipse :: forall r_a17bC. Prism' (Operation r_a17bC) (Matrix 3 3 r_a17bC)
+ Data.Geometry.Ipe.Types: _Ellipse :: forall r_aU4K. Prism' (Operation r_aU4K) (Matrix 3 3 r_aU4K)
- Data.Geometry.Ipe.Types: _EllipseSegment :: forall r_a16J0. Prism' (PathSegment r_a16J0) (Matrix 3 3 r_a16J0)
+ Data.Geometry.Ipe.Types: _EllipseSegment :: forall r_aTIE. Prism' (PathSegment r_aTIE) (Matrix 3 3 r_aTIE)
- Data.Geometry.Ipe.Types: _IpeGroup :: forall r_a17As. Prism' (IpeObject r_a17As) (IpeObject' Group r_a17As)
+ Data.Geometry.Ipe.Types: _IpeGroup :: forall r_aUq9. Prism' (IpeObject r_aUq9) (IpeObject' Group r_aUq9)
- Data.Geometry.Ipe.Types: _IpeImage :: forall r_a17As. Prism' (IpeObject r_a17As) (IpeObject' Image r_a17As)
+ Data.Geometry.Ipe.Types: _IpeImage :: forall r_aUq9. Prism' (IpeObject r_aUq9) (IpeObject' Image r_aUq9)
- Data.Geometry.Ipe.Types: _IpeMiniPage :: forall r_a17As. Prism' (IpeObject r_a17As) (IpeObject' MiniPage r_a17As)
+ Data.Geometry.Ipe.Types: _IpeMiniPage :: forall r_aUq9. Prism' (IpeObject r_aUq9) (IpeObject' MiniPage r_aUq9)
- Data.Geometry.Ipe.Types: _IpePath :: forall r_a17As. Prism' (IpeObject r_a17As) (IpeObject' Path r_a17As)
+ Data.Geometry.Ipe.Types: _IpePath :: forall r_aUq9. Prism' (IpeObject r_aUq9) (IpeObject' Path r_aUq9)
- Data.Geometry.Ipe.Types: _IpeTextLabel :: forall r_a17As. Prism' (IpeObject r_a17As) (IpeObject' TextLabel r_a17As)
+ Data.Geometry.Ipe.Types: _IpeTextLabel :: forall r_aUq9. Prism' (IpeObject r_aUq9) (IpeObject' TextLabel r_aUq9)
- Data.Geometry.Ipe.Types: _IpeUse :: forall r_a17As. Prism' (IpeObject r_a17As) (IpeObject' IpeSymbol r_a17As)
+ Data.Geometry.Ipe.Types: _IpeUse :: forall r_aUq9. Prism' (IpeObject r_aUq9) (IpeObject' IpeSymbol r_aUq9)
- Data.Geometry.Ipe.Types: _LineTo :: forall r_a17bC. Prism' (Operation r_a17bC) (Point 2 r_a17bC)
+ Data.Geometry.Ipe.Types: _LineTo :: forall r_aU4K. Prism' (Operation r_aU4K) (Point 2 r_aU4K)
- Data.Geometry.Ipe.Types: _MoveTo :: forall r_a17bC. Prism' (Operation r_a17bC) (Point 2 r_a17bC)
+ Data.Geometry.Ipe.Types: _MoveTo :: forall r_aU4K. Prism' (Operation r_aU4K) (Point 2 r_aU4K)
- Data.Geometry.Ipe.Types: _PolyLineSegment :: forall r_a16J0. Prism' (PathSegment r_a16J0) (PolyLine 2 () r_a16J0)
+ Data.Geometry.Ipe.Types: _PolyLineSegment :: forall r_aTIE. Prism' (PathSegment r_aTIE) (PolyLine 2 () r_aTIE)
- Data.Geometry.Ipe.Types: _PolygonPath :: forall r_a16J0. Prism' (PathSegment r_a16J0) (SimplePolygon () r_a16J0)
+ Data.Geometry.Ipe.Types: _PolygonPath :: forall r_aTIE. Prism' (PathSegment r_aTIE) (SimplePolygon () r_aTIE)
- Data.Geometry.Ipe.Types: _QCurveTo :: forall r_a17bC. Prism' (Operation r_a17bC) (Point 2 r_a17bC, Point 2 r_a17bC)
+ Data.Geometry.Ipe.Types: _QCurveTo :: forall r_aU4K. Prism' (Operation r_aU4K) (Point 2 r_aU4K, Point 2 r_aU4K)
- Data.Geometry.Ipe.Types: _QuadraticBezierSegment :: forall r_a16J0. Prism' (PathSegment r_a16J0) ()
+ Data.Geometry.Ipe.Types: _QuadraticBezierSegment :: forall r_aTIE. Prism' (PathSegment r_aTIE) ()
- Data.Geometry.Ipe.Types: _Spline :: forall r_a17bC. Prism' (Operation r_a17bC) [Point 2 r_a17bC]
+ Data.Geometry.Ipe.Types: _Spline :: forall r_aU4K. Prism' (Operation r_aU4K) [Point 2 r_aU4K]
- Data.Geometry.Ipe.Types: _SplineSegment :: forall r_a16J0. Prism' (PathSegment r_a16J0) ()
+ Data.Geometry.Ipe.Types: _SplineSegment :: forall r_aTIE. Prism' (PathSegment r_aTIE) ()
- Data.Geometry.Ipe.Types: content :: forall r_a18pm r_a18tb. Lens (IpePage r_a18pm) (IpePage r_a18tb) [IpeObject r_a18pm] [IpeObject r_a18tb]
+ Data.Geometry.Ipe.Types: content :: forall r_aVeK r_aViz. Lens (IpePage r_aVeK) (IpePage r_aViz) [IpeObject r_aVeK] [IpeObject r_aViz]
- Data.Geometry.Ipe.Types: data AttrMapSym1 (r6989586621679276428 :: Type) :: (~>) AttributeUniverse Type
+ Data.Geometry.Ipe.Types: data AttrMapSym1 (r6989586621679226030 :: Type) :: (~>) AttributeUniverse Type
- Data.Geometry.Ipe.Types: imageData :: forall r_a15Rx. Lens' (Image r_a15Rx) ()
+ Data.Geometry.Ipe.Types: imageData :: forall r_aSQW. Lens' (Image r_aSQW) ()
- Data.Geometry.Ipe.Types: layers :: forall r_a18pm. Lens' (IpePage r_a18pm) [LayerName]
+ Data.Geometry.Ipe.Types: layers :: forall r_aVeK. Lens' (IpePage r_aVeK) [LayerName]
- Data.Geometry.Ipe.Types: pages :: forall r_a18tA r_a18yR. Lens (IpeFile r_a18tA) (IpeFile r_a18yR) (NonEmpty (IpePage r_a18tA)) (NonEmpty (IpePage r_a18yR))
+ Data.Geometry.Ipe.Types: pages :: forall r_aViY r_aVof. Lens (IpeFile r_aViY) (IpeFile r_aVof) (NonEmpty (IpePage r_aViY)) (NonEmpty (IpePage r_aVof))
- Data.Geometry.Ipe.Types: pathSegments :: forall r_a16Tc r_a17bp. Iso (Path r_a16Tc) (Path r_a17bp) (LSeq 1 (PathSegment r_a16Tc)) (LSeq 1 (PathSegment r_a17bp))
+ Data.Geometry.Ipe.Types: pathSegments :: forall r_aTRt r_aU4x. Iso (Path r_aTRt) (Path r_aU4x) (LSeq 1 (PathSegment r_aTRt)) (LSeq 1 (PathSegment r_aU4x))
- Data.Geometry.Ipe.Types: preamble :: forall r_a18tA. Lens' (IpeFile r_a18tA) (Maybe IpePreamble)
+ Data.Geometry.Ipe.Types: preamble :: forall r_aViY. Lens' (IpeFile r_aViY) (Maybe IpePreamble)
- Data.Geometry.Ipe.Types: rect :: forall r_a15Rx r_a16mX. Lens (Image r_a15Rx) (Image r_a16mX) (Rectangle () r_a15Rx) (Rectangle () r_a16mX)
+ Data.Geometry.Ipe.Types: rect :: forall r_aSQW r_aTmB. Lens (Image r_aSQW) (Image r_aTmB) (Rectangle () r_aSQW) (Rectangle () r_aTmB)
- Data.Geometry.Ipe.Types: styles :: forall r_a18tA. Lens' (IpeFile r_a18tA) [IpeStyle]
+ Data.Geometry.Ipe.Types: styles :: forall r_aViY. Lens' (IpeFile r_aViY) [IpeStyle]
- Data.Geometry.Ipe.Types: symbolName :: forall r_a16nh. Lens' (IpeSymbol r_a16nh) Text
+ Data.Geometry.Ipe.Types: symbolName :: forall r_aTmV. Lens' (IpeSymbol r_aTmV) Text
- Data.Geometry.Ipe.Types: symbolPoint :: forall r_a16nh r_a16IG. Lens (IpeSymbol r_a16nh) (IpeSymbol r_a16IG) (Point 2 r_a16nh) (Point 2 r_a16IG)
+ Data.Geometry.Ipe.Types: symbolPoint :: forall r_aTmV r_aTIk. Lens (IpeSymbol r_aTmV) (IpeSymbol r_aTIk) (Point 2 r_aTmV) (Point 2 r_aTIk)
- Data.Geometry.Ipe.Types: type AttrMapSym2 (r6989586621679276428 :: Type) (l6989586621679276429 :: AttributeUniverse) = AttrMap r6989586621679276428 l6989586621679276429
+ Data.Geometry.Ipe.Types: type AttrMapSym2 (r6989586621679226030 :: Type) (l6989586621679226031 :: AttributeUniverse) = AttrMap r6989586621679226030 l6989586621679226031
- Data.Geometry.Ipe.Types: views :: forall r_a18pm. Lens' (IpePage r_a18pm) [View]
+ Data.Geometry.Ipe.Types: views :: forall r_aVeK. Lens' (IpePage r_aVeK) [View]
Files
- hgeometry-ipe.cabal +1/−3
- src/Data/Geometry/Ipe/FromIpe.hs +1/−1
- src/Data/Geometry/Ipe/IpeOut.hs +10/−0
- src/Data/Geometry/Ipe/PathParser.hs +1/−1
- src/Data/Geometry/Ipe/Writer.hs +1/−1
- test/Data/Geometry/Ipe/ReaderSpec.hs +5/−5
hgeometry-ipe.cabal view
@@ -1,5 +1,5 @@ name: hgeometry-ipe-version: 0.9.0.0+version: 0.10.0.0 synopsis: Reading and Writing ipe7 files. description: Reading and Writing ipe7 files and converting them to and from HGeometry types.@@ -133,8 +133,6 @@ , DeriveFoldable , DeriveTraversable , DeriveGeneric- , AutoDeriveTypeable- , FlexibleInstances , FlexibleContexts
src/Data/Geometry/Ipe/FromIpe.hs view
@@ -33,7 +33,7 @@ -- let testPath :: Path Int -- testPath = Path . fromSingleton . PolyLineSegment -- . PolyLine.fromPoints . map ext--- $ [ origin, point2 10 10, point2 200 100 ]+-- $ [ origin, Point2 10 10, Point2 200 100 ] -- testPathAttrs :: IpeAttributes Path Int -- testPathAttrs = attr SStroke (IpeColor "red") -- testObject :: IpeObject Int
src/Data/Geometry/Ipe/IpeOut.hs view
@@ -159,6 +159,10 @@ type DefaultIpeOut (Disk p r) = Path defIO = ipeDisk +instance Num r => HasDefaultIpeOut (Rectangle p r) where+ type DefaultIpeOut (Rectangle p r) = Path+ defIO = ipeRectangle+ -------------------------------------------------------------------------------- -- * Point Converters @@ -200,6 +204,12 @@ (SimplePolygon _) -> pg^.re _asSimplePolygon :+ mempty (MultiPolygon _ _) -> pg^.re _asMultiPolygon :+ mempty ++-- | Draw a Rectangle+ipeRectangle :: Num r => IpeOut (Rectangle p r) Path r+ipeRectangle r = ipePolygon $ fromPoints [tl,tr,br,bl]+ where+ (tl, tr, br, bl) = corners r -------------------------------------------------------------------------------- -- * Group Converters
src/Data/Geometry/Ipe/PathParser.hs view
@@ -129,7 +129,7 @@ pPoint :: Coordinate r => Parser (Point 2 r)-pPoint = point2 <$> pCoordinate <* pWhiteSpace <*> pCoordinate+pPoint = Point2 <$> pCoordinate <* pWhiteSpace <*> pCoordinate pCoordinate :: Coordinate r => Parser r
src/Data/Geometry/Ipe/Writer.hs view
@@ -453,7 +453,7 @@ -- testPoly :: PolyLine 2 () Double--- testPoly = fromPoints' [origin, point2 0 10, point2 10 10, point2 100 100]+-- testPoly = fromPoints' [origin, Point2 0 10, Point2 10 10, Point2 100 100]
test/Data/Geometry/Ipe/ReaderSpec.hs view
@@ -40,7 +40,7 @@ where useTxt = "<use name=\"mark/disk(sx)\" pos=\"320 736\" size=\"normal\" stroke=\"black\"/>"- useSym = Symbol (point2 320 736) "mark/disk(sx)"+ useSym = Symbol (Point2 320 736) "mark/disk(sx)" -- symAttrs = translatedUse = "<use matrix=\"1 0 0 1 4.44908 -4.21815\" name=\"mark/disk(sx)\" pos=\"320 736\" size=\"normal\" stroke=\"black\"/>"@@ -48,8 +48,8 @@ - ops = [ MoveTo $ point2 128 (656 :: Double)- , LineTo $ point2 224 768- , LineTo $ point2 304 624- , LineTo $ point2 432 752+ ops = [ MoveTo $ Point2 128 (656 :: Double)+ , LineTo $ Point2 224 768+ , LineTo $ Point2 304 624+ , LineTo $ Point2 432 752 ]