예제 #1
0
        /// <summary>
        /// Writes the point to its <see cref="CzmlDocument"/>.
        /// </summary>
        public override void Write()
        {
            using (PacketCesiumWriter packetWriter = m_document.CesiumStreamWriter.OpenPacket(m_document.CesiumOutputStream))
            {
                packetWriter.WriteId(Guid.NewGuid().ToString());
                PointShape point = (PointShape)m_shape;
                using (PositionCesiumWriter position = packetWriter.OpenPositionProperty())
                {
                    position.WriteCartographicRadians(point.Position);
                }

                using (PointCesiumWriter pointWriter = packetWriter.OpenPointProperty())
                {
                    pointWriter.WriteColorProperty(m_color);
                }
            }
        }
예제 #2
0
        /// <summary>
        /// Writes each point to its <see cref="CzmlDocument"/> as a separate packet.
        /// </summary>
        private void WritePacket(int index)
        {
            using (PacketCesiumWriter packetWriter = m_document.CesiumStreamWriter.OpenPacket(m_document.CesiumOutputStream))
            {
                packetWriter.WriteId(Guid.NewGuid().ToString());
                MultiPointShape multipoint = (MultiPointShape)m_shape;
                using (PositionCesiumWriter position = packetWriter.OpenPositionProperty())
                {
                    position.WriteCartographicRadians(multipoint[index]);
                }

                using (PointCesiumWriter pointWriter = packetWriter.OpenPointProperty())
                {
                    pointWriter.WriteColorProperty(m_color);
                }
            }
        }