public static void main(String[] args) {
    options = createOptions();

    CommandLineParser parser = new GnuParser();
    try {
      CommandLine line = parser.parse(options, args);

      String complexFile = line.getOptionValue("complex");
      String pointsFile = line.getOptionValue("points");

      String outputFile = null;
      if (line.hasOption("destination")) {
        outputFile = line.getOptionValue("destination");
      } else {
        outputFile = FileManager.generateUniqueFileName() + ".pov";
      }

      renderFromFiles(complexFile, pointsFile, outputFile);
    } catch (ParseException exp) {
      HelpFormatter formatter = new HelpFormatter();
      formatter.printHelp("plex-viewer", options);
    } catch (IOException e) {
      e.printStackTrace();
    }
  }