本文整理汇总了C#中BoundingBox.IncludeBoundingBox方法的典型用法代码示例。如果您正苦于以下问题:C# BoundingBox.IncludeBoundingBox方法的具体用法?C# BoundingBox.IncludeBoundingBox怎么用?C# BoundingBox.IncludeBoundingBox使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BoundingBox
的用法示例。
在下文中一共展示了BoundingBox.IncludeBoundingBox方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: WriteGeometry
private static BoundingBox WriteGeometry(MeshGeometry Mesh, XmlWriter Writer)
{
BoundingBox bb = new BoundingBox();
foreach (var item in Mesh.Children)
{
MeshGeometry m = item as MeshGeometry;
if (m != null)
{
Writer.WriteStartElement("Mesh");
BoundingBox childBB = WriteGeometry(m, Writer);
bb.IncludeBoundingBox(childBB);
Writer.WriteEndElement();
}
}
if (Mesh.Positions.Count == Mesh.Normals.Count && Mesh.Positions.Count > 0)
{
for (int i = 0; i < Mesh.Normals.Count; i++)
{
bb.IncludePoint(Mesh.Positions[i]);
Writer.WriteStartElement("PN");
Writer.WriteAttributeString("PX", Mesh.Positions[i].X.ToString());
Writer.WriteAttributeString("PY", Mesh.Positions[i].Y.ToString());
Writer.WriteAttributeString("PZ", Mesh.Positions[i].Z.ToString());
Writer.WriteAttributeString("NX", Mesh.Normals[i].X.ToString());
Writer.WriteAttributeString("NY", Mesh.Normals[i].Y.ToString());
Writer.WriteAttributeString("NZ", Mesh.Normals[i].Z.ToString());
Writer.WriteEndElement();
}
for (int i = 0; i < Mesh.TriangleIndices.Count;)
{
Writer.WriteStartElement("F");
Writer.WriteAttributeString("I1", Mesh.TriangleIndices[i++].ToString());
Writer.WriteAttributeString("I2", Mesh.TriangleIndices[i++].ToString());
Writer.WriteAttributeString("I3", Mesh.TriangleIndices[i++].ToString());
Writer.WriteEndElement();
}
}
if (bb.IsValid)
{
Writer.WriteStartElement("BB");
Writer.WriteAttributeString("MnX", bb.PointMin.X.ToString());
Writer.WriteAttributeString("MnY", bb.PointMin.Y.ToString());
Writer.WriteAttributeString("MnZ", bb.PointMin.Z.ToString());
Writer.WriteAttributeString("MxX", bb.PointMax.X.ToString());
Writer.WriteAttributeString("MxY", bb.PointMax.Y.ToString());
Writer.WriteAttributeString("MxZ", bb.PointMax.Z.ToString());
Writer.WriteEndElement();
}
return bb;
}