protected override ModelRoot AddToModel(ModelRoot gltfModel, string nodeName, IEnumerable <BuildingModel> models) { TriangulationNormals triangulation = this.Triangulate(models); if (triangulation.Positions.Count() == 0) { _logger.LogWarning($"{this.GetType().Name} triangulation has 0 positions. No data written to model"); return(gltfModel); } gltfModel = _gltfService.AddMesh(gltfModel, glTFNodeName, new IndexedTriangulation(triangulation), null, null, doubleSided: true); return(gltfModel); }
public IndexedTriangulation(TriangulationNormals triangulation) { Positions = triangulation.Positions.ToList(); Indices = triangulation.Indices.ToList(); Colors = triangulation.Colors?.ToList(); }