Beispiel #1
0
        /// <summary>
        /// Constructs a basic stl writer from an <paramref name="extractor"/>.
        /// </summary>
        /// <param name="extractor">The factory used for extracting data from the data structure. Must not be null</param>
        /// <exception cref="ArgumentNullException">Thrown if <paramref name="extractor"/> is null.</exception>
        protected StlWriterBase(IDataStructureExtractor <TTriangle, TVertex, TNormal> extractor)
        {
            if (extractor == null)
            {
                throw new ArgumentNullException("extractor");
            }

            ExtractTriangle = extractor.ExtractTriangle;
            ExtractVertex   = extractor.ExtractVertex;
            ExtractNormal   = extractor.ExtractNormal;
        }
Beispiel #2
0
 public BinaryStlWriter(IDataStructureExtractor <TTriangle, TVertex, TNormal> extractor)
     : base(extractor)
 {
 }
 protected abstract TWriterImpl CreateWriter(IDataStructureExtractor <Triangle, Vertex, Normal> extractor);
 protected override AsciiStlWriter <Triangle, Vertex, Normal> CreateWriter(IDataStructureExtractor <Triangle, Vertex, Normal> extractor)
 {
     return(new AsciiStlWriter <Triangle, Vertex, Normal>(extractor));
 }