-
Notifications
You must be signed in to change notification settings - Fork 10
/
Copy pathVertice.cs
106 lines (93 loc) · 3.64 KB
/
Vertice.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
namespace ArcShapeFile
{
/// <summary>
/// Contains the X, Y, Z coordinates and measure information of a vertice
/// </summary>
[ClassInterface(ClassInterfaceType.AutoDual)]
[Guid("1BBEA337-0B68-418c-B380-BB54B38866A1")]
public class Vertice : ArcShapeFile.IVertice
{
#region ********** Local Variables **********
private double mvarX_Cord;
private double mvarY_Cord;
private double? mvarZ_Cord;
private double? mvarMeasure;
//private int mvarPartNo;
//private ePartType mvarPartType;
#endregion
#region ********** Public Vertice Properties **********
/// <summary>
/// The X component of the cartesian coordinate
/// </summary>
/// <remarks>
/// This is one part of the standard 2 dimesional cartesian plain coordinate pair. Adding new Vertices should be done through the <see cref="Vertices.Add(Vertice)"/> method.
/// The <see cref="ArcShapeFile.ShapeFile.ModifyShape">ModifyShape</see> method will write any changes to existing vertices back to the ShapeFile.
/// </remarks>
public double X_Cord
{
get { return mvarX_Cord; }
set
{
if (mvarX_Cord != value)
Globals.mvarVerticeChange = true;
mvarX_Cord = value;
}
}
/// <summary>
/// The Y component of the cartesian coordinate
/// </summary>
/// <remarks>
/// This is one part of the standard 2 dimesional cartesian plain coordinate pair. Adding new Vertices should be done through the <see cref="Vertices.Add(Vertice)"/> method.
/// The <see cref="ArcShapeFile.ShapeFile.ModifyShape">ModifyShape</see> method will write any changes to existing vertices back to the ShapeFile.
/// </remarks>
public double Y_Cord
{
get { return mvarY_Cord; }
set
{
if (mvarY_Cord != value)
Globals.mvarVerticeChange = true;
mvarY_Cord = value;
}
}
/// <summary>
/// The Z or height component of the current 3 dimensional Vertice record
/// </summary>
/// <remarks>
/// Z coordinates are only applicable to shapes of type X,Y,Z Measure. The Z_Cord value may be null. Null values are written to ShapeFiles as any value less than 10<sup>-38</sup>
/// </remarks>
public double? Z_Cord
{
get { return mvarZ_Cord; }
set
{
if (mvarZ_Cord != value)
Globals.mvarVerticeChange = true;
mvarZ_Cord = value;
}
}
/// <summary>
/// The measure component of the current Vertice record
/// </summary>
/// <remarks>
/// Measures are only applicable to shapes of type X,Y Measure or X,Y,Z Measure. The Measure value may be null. Null values are written to ShapeFiles as any value less than 10<sup>-38</sup>
/// </remarks>
public double? Measure
{
get { return mvarMeasure; }
set
{
if (!mvarMeasure.Equals(value))
{
Globals.mvarVerticeChange = true;
}
mvarMeasure = value;
}
}
#endregion
}
}