public void ReadXml(XmlReader reader) { reader.MoveToContent(); var e = (XElement)XNode.ReadFrom(reader); XmlExt.SetReadonlyField(ref this, l => l.ThroughPoint, Point3D.ReadFrom(e.SingleElement("ThroughPoint").CreateReader())); XmlExt.SetReadonlyField(ref this, l => l.Direction, UnitVector3D.ReadFrom(e.SingleElement("Direction").CreateReader())); }
/// <inheritdoc/> void IXmlSerializable.ReadXml(XmlReader reader) { reader.MoveToContent(); var e = (XElement)XNode.ReadFrom(reader); this = new Line3D( Point3D.ReadFrom(e.SingleElement("StartPoint").CreateReader()), Point3D.ReadFrom(e.SingleElement("EndPoint").CreateReader())); }
public void ReadXml(XmlReader reader) { reader.MoveToContent(); var e = (XElement)XNode.ReadFrom(reader); XmlExt.SetReadonlyField(ref this, l => l.RootPoint, Point3D.ReadFrom(e.SingleElement("RootPoint").CreateReader())); XmlExt.SetReadonlyField(ref this, l => l.Normal, UnitVector3D.ReadFrom(e.SingleElement("Normal").CreateReader())); XmlExt.SetReadonlyField(ref this, l => l.D, -this.RootPoint.ToVector3D().DotProduct(this.Normal)); }
/// <inheritdoc/> void IXmlSerializable.ReadXml(XmlReader reader) { reader.MoveToContent(); var e = (XElement)XNode.ReadFrom(reader); this = new Ray3D( Point3D.ReadFrom(e.SingleElement("ThroughPoint").CreateReader()), UnitVector3D.ReadFrom(e.SingleElement("Direction").CreateReader())); }
public void ReadXml(XmlReader reader) { reader.MoveToContent(); var e = (XElement)XNode.ReadFrom(reader); var startPoint = Point3D.ReadFrom(e.SingleElement("StartPoint").CreateReader()); XmlExt.SetReadonlyField(ref this, l => l.StartPoint, startPoint); var endPoint = Point3D.ReadFrom(e.SingleElement("EndPoint").CreateReader()); XmlExt.SetReadonlyField(ref this, l => l.EndPoint, endPoint); }
/// <inheritdoc /> void IXmlSerializable.ReadXml(XmlReader reader) { var e = (XElement)XNode.ReadFrom(reader); var xAxis = Vector3D.ReadFrom(e.SingleElementReader("XAxis")); this.SetColumn(0, new[] { xAxis.X, xAxis.Y, xAxis.Z, 0 }); var yAxis = Vector3D.ReadFrom(e.SingleElementReader("YAxis")); this.SetColumn(1, new[] { yAxis.X, yAxis.Y, yAxis.Z, 0 }); var zAxis = Vector3D.ReadFrom(e.SingleElementReader("ZAxis")); this.SetColumn(2, new[] { zAxis.X, zAxis.Y, zAxis.Z, 0 }); var origin = Point3D.ReadFrom(e.SingleElementReader("Origin")); this.SetColumn(3, new[] { origin.X, origin.Y, origin.Z, 1 }); }