예제 #1
0
        /// <summary>
        /// Constructs a basic stl read from an <paramref name="dataStructureCreator"/>.
        /// </summary>
        /// <param name="dataStructureCreator">The factory used for creating the data structure. Must not be null</param>
        /// <exception cref="ArgumentNullException">Thrown if <paramref name="dataStructureCreator"/> is null.</exception>
        protected StlReaderBase(IDataStructureCreator <TTriangle, TVertex, TNormal> dataStructureCreator)
        {
            if (dataStructureCreator == null)
            {
                throw new ArgumentNullException("dataStructureCreator");
            }

            CreateTriangle = dataStructureCreator.CreateTriangle;
            CreateNormal   = dataStructureCreator.CreateNormal;
            CreateVertex   = dataStructureCreator.CreateVertex;
        }
예제 #2
0
 protected override BinaryStlReader <Triangle, Vertex, Normal> CreateReader(IDataStructureCreator <Triangle, Vertex, Normal> structureCreator)
 {
     return(new BinaryStlReader <Triangle, Vertex, Normal>(structureCreator));
 }
예제 #3
0
 public StlReader(IDataStructureCreator <TTriangle, TVertex, TNormal> dataStructureCreator) : base(dataStructureCreator)
 {
 }
예제 #4
0
 protected abstract TStlReaderImplementation CreateReader(IDataStructureCreator <Triangle, Vertex, Normal> structureCreator);
예제 #5
0
 public AsciiStlReader(IDataStructureCreator <TTriangle, TVertex, TNormal> structureCreator)
     : base(structureCreator)
 {
 }