INTERLIS 2.3;

TYPE MODEL ISO19107_PLANAS_V3_1 (es)
AT "https://www.icde.gov.co"
VERSION "2023-10-03"  // Se modifican las coorenadas límites 2D // =

  DOMAIN

    GM_Point2D = COORD 3681000.000 .. 5700000.000 [INTERLIS.m], 1080000.000 .. 3310000.000 [INTERLIS.m] ,ROTATION 2 -> 1;

    GM_Curve2D = POLYLINE WITH (ARCS,STRAIGHTS) VERTEX GM_Point2D WITHOUT OVERLAPS>0.001;

    GM_Surface2D = SURFACE WITH (ARCS,STRAIGHTS) VERTEX GM_Point2D WITHOUT OVERLAPS>0.001;

    GM_Point3D = COORD 3681000.000 .. 5700000.000 [INTERLIS.m], 1080000.000 .. 3310000.000 [INTERLIS.m], -5000.000 .. 6000.000 [INTERLIS.m] ,ROTATION 2 -> 1;

    GM_Curve3D = POLYLINE WITH (ARCS,STRAIGHTS) VERTEX GM_Point3D WITHOUT OVERLAPS>0.001;

    GM_Surface3D = SURFACE WITH (ARCS,STRAIGHTS) VERTEX GM_Point3D WITHOUT OVERLAPS>0.001;

  STRUCTURE GM_Geometry2DListValue =
  END GM_Geometry2DListValue;

  STRUCTURE GM_Curve2DListValue =
    value : MANDATORY GM_Curve2D;
  END GM_Curve2DListValue;

  STRUCTURE GM_Surface2DListValue =
    value : MANDATORY GM_Surface2D;
  END GM_Surface2DListValue;

  !!@ ili2db.mapping=MultiLine
  STRUCTURE GM_MultiCurve2D =
    geometry : LIST {1..*} OF ISO19107_PLANAS_V3_1.GM_Curve2DListValue;
  END GM_MultiCurve2D;

  !!@ ili2db.mapping=MultiSurface
  STRUCTURE GM_MultiSurface2D =
    geometry : LIST {1..*} OF ISO19107_PLANAS_V3_1.GM_Surface2DListValue;
  END GM_MultiSurface2D;

  STRUCTURE GM_Curve3DListValue =
    value : MANDATORY GM_Curve3D;
  END GM_Curve3DListValue;

  STRUCTURE GM_Surface3DListValue =
    value : MANDATORY GM_Surface3D;
  END GM_Surface3DListValue;

  !!@ ili2db.mapping=MultiLine
  STRUCTURE GM_MultiCurve3D =
    geometry : LIST {1..*} OF ISO19107_PLANAS_V3_1.GM_Curve3DListValue;
  END GM_MultiCurve3D;

  !!@ ili2db.mapping=MultiSurface
  STRUCTURE GM_MultiSurface3D =
    geometry : LIST {1..*} OF ISO19107_PLANAS_V3_1.GM_Surface3DListValue;
  END GM_MultiSurface3D;

END ISO19107_PLANAS_V3_1.
