private static ViewpointContainer GetSingleViewpoint(VisualizationInfo GivenPhysicalViewpoint) { var ReturnObject = new ViewpointContainer(); ReturnObject.Viewpoint = new viewpoint_GET(); // Get the components foreach (var CurrentComponent in GivenPhysicalViewpoint.Components) { if (ReturnObject.Components == null) { ReturnObject.Components = new List <component_GET>(); } ReturnObject.Components.Add(GetSingleViewpointComponent(CurrentComponent)); } if (GivenPhysicalViewpoint.ClippingPlanes.Count > 0) { ReturnObject.Viewpoint.clipping_planes = new clipping_planes(); ReturnObject.Viewpoint.clipping_planes.clipping_plane = new List <clipping_plane>(); foreach (var CurrentClippingPlane in GivenPhysicalViewpoint.ClippingPlanes) { ReturnObject.Viewpoint.clipping_planes.clipping_plane.Add(GetViewpointClippingPlane(CurrentClippingPlane)); } } if (GivenPhysicalViewpoint.Lines.Count > 0) { ReturnObject.Viewpoint.lines = new lines(); ReturnObject.Viewpoint.lines.line = new List <line>(); foreach (var CurrentLine in GivenPhysicalViewpoint.Lines) { ReturnObject.Viewpoint.lines.line.Add(GetViewpointLine(CurrentLine)); } } ReturnObject.Viewpoint.guid = GivenPhysicalViewpoint.GUID; if (GivenPhysicalViewpoint.ShouldSerializeOrthogonalCamera()) { ReturnObject.Viewpoint.orthogonal_camera = GetViewpointOrthogonalCamera(GivenPhysicalViewpoint.OrthogonalCamera); } // Else if here because only on of the cameras may be set else if (GivenPhysicalViewpoint.ShouldSerializePerspectiveCamera()) { ReturnObject.Viewpoint.perspective_camera = GetViewpointPerspectiveCamera(GivenPhysicalViewpoint.PerspectiveCamera); } // Get the bitmaps if there are any // Bitmaps are CURRENTLY NOT SUPPORTED return(ReturnObject); }