static SegmentModifier[] BuildSegmentModifiers(byte[] bytes, int startIndex, int numCurves, out int totalLen) { SegmentModifier[] segmentModifiers = new SegmentModifier[numCurves]; int len = 0; for (int i = 0; i < numCurves; ++i) { segmentModifiers[i].StartPointIndex = BitConverter.ToInt32(bytes, startIndex + len); int segmentType = BitConverter.ToInt32(bytes, startIndex + len + 4); segmentModifiers[i].SegmentType = segmentType; segmentModifiers[i].SegmentParams = BuildSegmentParams(bytes, startIndex + len + 8, segmentType); len += SegmentLength(segmentType); } totalLen = len; return(segmentModifiers); }
static SegmentModifier[] BuildSegmentModifiers(byte[] bytes, int startIndex, int numCurves, out int totalLen) { SegmentModifier[] segmentModifiers = new SegmentModifier[numCurves]; int len = 0; for (int i = 0; i < numCurves; ++i) { segmentModifiers[i].StartPointIndex = BitConverter.ToInt32(bytes, startIndex + len); int segmentType = BitConverter.ToInt32(bytes, startIndex + len + 4); segmentModifiers[i].SegmentType = segmentType; segmentModifiers[i].SegmentParams = BuildSegmentParams(bytes, startIndex + len + 8, segmentType); len += SegmentLength(segmentType); } totalLen = len; return segmentModifiers; }
public PolygonZM(Envelope box, int numParts, int numPoints, int[] parts, Point[] points, double zMin, double zMax, double[] zArray, double mMin, double mMax, double[] mArray, int numCurves, SegmentModifier[] segmentModifiers, int[] ids) { BoundingBox = box; NumParts = numParts; NumPoints = numPoints; Parts = parts; Points = points; ZMin = zMin; ZMax = zMax; Zs = zArray; MMin = mMin; MMax = mMax; Ms = mArray; NumCurves = numCurves; SegmentModifiers = segmentModifiers; IDs = ids; }