Login  Register

Re: Issue with shading the cubic

Posted by tamb20 on Oct 22, 2015; 12:12am
URL: https://forum.jogamp.org/Issue-with-shading-the-cubic-tp4035539p4035549.html

I do not want to shad the interior triangles. But I need to shad only the surface triangles. I do not understand you properly could you please explain more? What is the "official" STL loader  "org.j3d.loaders.stl.STLFileReader"? Is it a library class should I use it instead of the current one. If so, Could you please, clarify how I should use it? Currently, I use my own FileLoader. See it below.

package fem;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;
import java.io.StreamTokenizer;
import java.util.LinkedList;
import java.util.List;

/**
 *
 * @author administrator
 */
public class FileLoader {

        private Reader inputReader;
        private StreamTokenizer tokenizer;

        /** Creates a new instance of VSTextbyHandFileReader */
        public FileLoader(File file) {
                try {
                        inputReader = new FileReader(file);
                } catch (java.io.FileNotFoundException e) {
                        System.out.println(e.toString());
                }
                tokenizer = new StreamTokenizer(inputReader);
                tokenizer.resetSyntax();
                tokenizer.whitespaceChars('\0', ' ');
                tokenizer.wordChars('!', 'z');
                tokenizer.eolIsSignificant(true);
        }

        public Object[] getNextEventsTokens() {
                List<String> list = new LinkedList<>();
                try {
                        while ((tokenizer.nextToken() != StreamTokenizer.TT_EOF)
                                        && (tokenizer.ttype != StreamTokenizer.TT_EOL))
                                list.add(tokenizer.sval);
                } catch (java.io.IOException e) {
                        System.out.println(e.toString());
                }
                if (tokenizer.ttype == StreamTokenizer.TT_EOF)
                        return null;
                else
                        return (list.toArray());
        }

        public void close() {
                try {
                        inputReader.close();
                } catch (IOException e) {
                        System.err.println(e.toString());
                }
        }
}