private static PartialModel GenerateCircleModel() { float stepAngle = (float)Math.PI * 2f / 32f; var indices = new List <int>(); var vertices = new List <VertVN>(); //Cone vertices and indices for (int i = 0; i < 32; i++) { var pt = new Vector3((float)Math.Cos(stepAngle * i), 0f, (float)Math.Sin(stepAngle * i)) * 0.5f; vertices.Add(new VertVN(pt, pt.Normalized())); indices.Add((i + 1) % 32); indices.Add(i); //indices.Add(32); } int curIdx = GeneralMeshBuffer.IndexCount; int curVert = GeneralMeshBuffer.VertexCount; GeneralMeshBuffer.AppendVertices(vertices); GeneralMeshBuffer.AppendIndices(indices); int idxCount = GeneralMeshBuffer.IndexCount - curIdx; var vertexPositions = vertices.Select(x => x.Position).ToList(); var bounding = BBox.FromVertices(vertexPositions); var model = new PartialModel(GeneralMeshBuffer, curIdx, curVert, idxCount, OpenTK.Graphics.OpenGL.PrimitiveType.Lines); model.BoundingBox = bounding; model.Vertices = vertexPositions; LoadedModels.Add(model); return(model); }
public static void InitializeResources() { GeneralMeshBuffer = new IndexedVertexBuffer <VertVN>(); var loadedMesh = ResourceHelper.GetResourceModel("Models.Cube.obj", "obj").Meshes[0]; CubeModel = AppendPartialMesh(loadedMesh); loadedMesh = ResourceHelper.GetResourceModel("Models.Sphere.obj", "obj").Meshes[0]; SphereModel = AppendPartialMesh(loadedMesh); loadedMesh = ResourceHelper.GetResourceModel("Models.Cylinder.obj", "obj").Meshes[0]; CylinderModel = AppendPartialMesh(loadedMesh); loadedMesh = ResourceHelper.GetResourceModel("Models.CrossAxleMale.obj", "obj").Meshes[0]; CrossAxleMaleModel = AppendPartialMesh(loadedMesh); loadedMesh = ResourceHelper.GetResourceModel("Models.CrossAxleFemale.obj", "obj").Meshes[0]; CrossAxleFemaleModel = AppendPartialMesh(loadedMesh); loadedMesh = ResourceHelper.GetResourceModel("Models.TechnicPinFemale.obj", "obj").Meshes[0]; TechnicPinFemaleModel = AppendPartialMesh(loadedMesh); loadedMesh = ResourceHelper.GetResourceModel("Models.BarFemale.obj", "obj").Meshes[0]; BarFemaleModel = AppendPartialMesh(loadedMesh); }
private static PartialModel AppendPartialMesh(Assimp.Mesh mesh) { var primitiveType = OpenTK.Graphics.OpenGL.PrimitiveType.Triangles; if (mesh.Faces[0].IndexCount == 4) { primitiveType = OpenTK.Graphics.OpenGL.PrimitiveType.Quads; } int curIdx = GeneralMeshBuffer.IndexCount; int curVert = GeneralMeshBuffer.VertexCount; GeneralMeshBuffer.LoadModelVertices(mesh, true); int idxCount = GeneralMeshBuffer.IndexCount - curIdx; var vertices = GeneralMeshBuffer.GetVertices().Skip(curVert); var vertexPositions = vertices.Select(x => x.Position).ToList(); var bounding = BBox.FromVertices(vertexPositions); var model = new PartialModel(GeneralMeshBuffer, curIdx, curVert, idxCount, primitiveType); model.BoundingBox = bounding; model.Vertices = vertexPositions; LoadedModels.Add(model); //model.LoadVertices(); //model.CalculateBoundingBox(); return(model); }
// GET: Partial public PartialViewResult Slider() { var parial = new PartialModel(); parial._backslider = db.BackSliders.ToList(); return(PartialView(parial)); }
public ActionResult UpdatePartial() { var model = new PartialModel { Text = "was updated" }; return(View("Partial", model)); }
public ActionResult ViewRequest() { var model = new PartialModel { Text = " Text from the action" }; return(PartialView("Partial", model)); }
public IActionResult OpenImage(string adImagePath) { var openImageModal = new PartialModel { PartialViewName = "OpenImageModalView", Model = adImagePath }; return(PartialView("ModalView", openImageModal)); }
public IActionResult OpenWindowToDelete(Guid adId) { var deleteAdModel = new PartialModel { PartialViewName = "DeleteAdModalView", Model = adId }; return(PartialView("ModalView", deleteAdModel)); }
/// <summary> /// On mouse click, select the specific board /// where the click happened. /// </summary> /// <param name="sender"></param> /// <param name="args"></param> public void OnViewportMouseDown( object sender, System.Windows.Input.MouseEventArgs args) { if (vstuff.models == null) { return; } if ( Keyboard.IsKeyDown(Key.LeftCtrl) || Keyboard.IsKeyDown(Key.RightCtrl) ) { // extending the selection. // don't unselect all first. } else { UnselectAll(); } RayMeshGeometry3DHitTestResult rayMeshResult = (RayMeshGeometry3DHitTestResult) VisualTreeHelper.HitTest(myVP, args.GetPosition(myVP)); if (rayMeshResult != null) { PartialModel found = null; foreach (PartialModel pm in vstuff.models) { if (pm.mesh == rayMeshResult.MeshHit) { found = pm; break; } } if (found != null) { if (IsSelected(found.bag.solid)) { Unselect(found.bag.solid); } else { Select(found.bag.solid); } } } }
public static void ReleaseResources() { if (GeneralMeshBuffer != null) { GeneralMeshBuffer.Dispose(); GeneralMeshBuffer = null; } CubeModel = null; SphereModel = null; CrossAxleMaleModel = null; CrossAxleFemaleModel = null; CylinderModel = null; }
public PartialViewResult Navbar() { if (Session["langId"] != null) { language_id = Convert.ToInt32(Session["langId"]); IndexWiewModel index = new IndexWiewModel(); var navbar = new PartialModel(); navbar._navbar = db.Navbars.Where(s => s.navbar_lag_id == language_id).ToList(); return(PartialView(navbar)); } else { var navbar = new PartialModel(); navbar._navbar = db.Navbars.Where(s => s.navbar_lag_id == language_id).ToList(); return(PartialView(navbar)); } }
public void OnViewportMouseMove(object sender, System.Windows.Input.MouseEventArgs args) { if (vstuff.models == null) { return; } RayMeshGeometry3DHitTestResult rayMeshResult = (RayMeshGeometry3DHitTestResult) VisualTreeHelper.HitTest(myVP, args.GetPosition(myVP)); if (rayMeshResult != null) { PartialModel found = null; foreach (PartialModel pm in vstuff.models) { if (pm.mesh == rayMeshResult.MeshHit) { found = pm; break; } } if (found != null) { int ndx = rayMeshResult.VertexIndex1; int trindx = ndx / 3; Triangle3d t = found.tris[trindx]; #if DEBUG myHoverFaceInfo.Content = string.Format("Pt: {3} -- {0}.{1}: {2}", t.face.solid.name, t.face.name, t.face.GetQuality(), ptstring(rayMeshResult.PointHit)); #else myHoverFaceInfo.Content = string.Format("{0}.{1}: {2}", t.face.solid.name, t.face.name, t.face.GetQuality()); #endif } } }
public static void EndDrawModel(PartialModel model) { EndDrawModel(model.VertexBuffer); }
public static void BeginDrawModel(PartialModel model, Matrix4 transform, MaterialInfo material) { BeginDrawModel(model.VertexBuffer, transform, material); }
public RandomModel(int num,PartialModel partialModel) { Number = num; PartialModel = partialModel; }
// properties, etc. // per comments in other answer you may want something like this public MainViewModel() { Partial = new PartialModel(); }