/// <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; }
protected override BinaryStlReader <Triangle, Vertex, Normal> CreateReader(IDataStructureCreator <Triangle, Vertex, Normal> structureCreator) { return(new BinaryStlReader <Triangle, Vertex, Normal>(structureCreator)); }
public StlReader(IDataStructureCreator <TTriangle, TVertex, TNormal> dataStructureCreator) : base(dataStructureCreator) { }
protected abstract TStlReaderImplementation CreateReader(IDataStructureCreator <Triangle, Vertex, Normal> structureCreator);
public AsciiStlReader(IDataStructureCreator <TTriangle, TVertex, TNormal> structureCreator) : base(structureCreator) { }