001 package org.jgnuplot; 002 003 /** 004 * This class models all possible values for the point style option for a graph 005 * in a plot command. 006 * 007 * @author Pander 008 */ 009 public final class PointType { 010 private PointType() { 011 } 012 013 public static final int NOT_SPECIFIED = -2; 014 015 public static final int SCREEN_NONE = -1; 016 017 public static final int SCREEN_DOT = 0; 018 019 public static final int SCREEN_PLUS = 1; 020 021 public static final int SCREEN_X = 2; 022 023 public static final int SCREEN_STAR = 3; 024 025 public static final int SCREEN_SQUARE_DOT = 4; 026 027 public static final int SCREEN_SQUARE_FILLED = 5; 028 029 public static final int SCREEN_CIRCLE_DOT = 6; 030 031 public static final int SCREEN_CIRCLE_FILLED = 7; 032 033 public static final int SCREEN_TRIANGLE_UP_DOT = 8; 034 035 public static final int SCREEN_TRIANGLE_UP_FILLED = 9; 036 037 public static final int SCREEN_TRIANGLE_DOWN_DOT = 10; 038 039 public static final int SCREEN_TRIANGLE_DOWN_FILLED = 11; 040 041 public static final int SCREEN_DIAMOND_DOT = 12; 042 043 public static final int SCREEN_DIAMOND_FILLED = 13; 044 045 public static final int POSTSCRIPT_DOT = -1; 046 047 public static final int POSTSCRIPT_DOT_SMALL = 0; 048 049 public static final int POSTSCRIPT_PLUS = 1; 050 051 public static final int POSTSCRIPT_X = 2; 052 053 public static final int POSTSCRIPT_STAR = 3; 054 055 public static final int POSTSCRIPT_SQUARE_DOT = 4; 056 057 public static final int POSTSCRIPT_SQUARE_FILLED = 5; 058 059 public static final int POSTSCRIPT_CIRCLE_DOT = 6; 060 061 public static final int POSTSCRIPT_CIRCLE_FILLED = 7; 062 063 public static final int POSTSCRIPT_TRIANGLE_UP_DOT = 8; 064 065 public static final int POSTSCRIPT_TRIANGLE_UP_FILLED = 9; 066 067 public static final int POSTSCRIPT_TRIANGLE_DOWN_DOT = 10; 068 069 public static final int POSTSCRIPT_TRIANGLE_DOWN_FILLED = 11; 070 071 public static final int POSTSCRIPT_DIAMOND_DOT = 12; 072 073 public static final int POSTSCRIPT_DIAMOND_FILLED = 13; 074 075 public static final int POSTSCRIPT_PENTAGON_DOT = 14; 076 077 public static final int POSTSCRIPT_PENTAGON_FILLED = 15; 078 079 // TODO POSTSCRIPT 16 - 74 080 081 /** 082 * This method converts screen point type to PostScript point type because 083 * the underlying integer values are not identical. 084 * 085 * @param thePointType 086 * screen point type 087 * @return postscript point type. 088 */ 089 public static int convertScreenToPostscript(int thePointType) { 090 switch (thePointType) { 091 case SCREEN_DOT: 092 return POSTSCRIPT_DOT; 093 case SCREEN_PLUS: 094 return POSTSCRIPT_PLUS; 095 case SCREEN_X: 096 return POSTSCRIPT_X; 097 case SCREEN_STAR: 098 return POSTSCRIPT_STAR; 099 case SCREEN_SQUARE_DOT: 100 return POSTSCRIPT_SQUARE_DOT; 101 case SCREEN_SQUARE_FILLED: 102 return POSTSCRIPT_SQUARE_FILLED; 103 case SCREEN_CIRCLE_DOT: 104 return POSTSCRIPT_CIRCLE_DOT; 105 case SCREEN_CIRCLE_FILLED: 106 return POSTSCRIPT_CIRCLE_FILLED; 107 case SCREEN_TRIANGLE_DOWN_DOT: 108 return POSTSCRIPT_TRIANGLE_DOWN_DOT; 109 case SCREEN_TRIANGLE_DOWN_FILLED: 110 return POSTSCRIPT_TRIANGLE_DOWN_FILLED; 111 case SCREEN_TRIANGLE_UP_DOT: 112 return POSTSCRIPT_TRIANGLE_UP_DOT; 113 case SCREEN_TRIANGLE_UP_FILLED: 114 return POSTSCRIPT_TRIANGLE_UP_FILLED; 115 case SCREEN_DIAMOND_DOT: 116 return POSTSCRIPT_DIAMOND_DOT; 117 case SCREEN_DIAMOND_FILLED: 118 return POSTSCRIPT_DIAMOND_FILLED; 119 default: 120 return POSTSCRIPT_DOT; // TODO not all are covered 121 } 122 } 123 124 /** 125 * This method converts PostScript point type to screen point type because 126 * the underlying integer values are not identical. 127 * 128 * @param thePointType 129 * PostScript point type 130 * 131 * @return screen point type. 132 */ 133 public static int convertPostscriptToScreen(int thePointType) { 134 switch (thePointType) { 135 case POSTSCRIPT_DOT: 136 return SCREEN_DOT; 137 case POSTSCRIPT_PLUS: 138 return SCREEN_PLUS; 139 case POSTSCRIPT_X: 140 return SCREEN_X; 141 case POSTSCRIPT_STAR: 142 return SCREEN_STAR; 143 case POSTSCRIPT_SQUARE_DOT: 144 return SCREEN_SQUARE_DOT; 145 case POSTSCRIPT_SQUARE_FILLED: 146 return SCREEN_SQUARE_FILLED; 147 case POSTSCRIPT_CIRCLE_DOT: 148 return SCREEN_CIRCLE_DOT; 149 case POSTSCRIPT_CIRCLE_FILLED: 150 return SCREEN_CIRCLE_FILLED; 151 case POSTSCRIPT_TRIANGLE_DOWN_DOT: 152 return SCREEN_TRIANGLE_DOWN_DOT; 153 case POSTSCRIPT_TRIANGLE_DOWN_FILLED: 154 return SCREEN_TRIANGLE_DOWN_FILLED; 155 case POSTSCRIPT_TRIANGLE_UP_DOT: 156 return SCREEN_TRIANGLE_UP_DOT; 157 case POSTSCRIPT_TRIANGLE_UP_FILLED: 158 return SCREEN_TRIANGLE_UP_FILLED; 159 case POSTSCRIPT_DIAMOND_DOT: 160 return SCREEN_DIAMOND_DOT; 161 case POSTSCRIPT_DIAMOND_FILLED: 162 return SCREEN_DIAMOND_FILLED; 163 default: 164 return SCREEN_DOT; // TODO not all are covered 165 } 166 } 167 }