001package armyc2.c5isr.renderer.utilities; 002 003/** 004 * @deprecated 005 */ 006public interface IMultiPointRenderer { 007 008 /** 009 * Renders all multi-point symbols, creating KML that can be used to draw 010 * it on a Google map. Multipoint symbols cannot be draw the same 011 * at different scales. For instance, graphics with arrow heads will need to 012 * redraw arrowheads when you zoom in on it. Similarly, graphics like a 013 * Forward Line of Troops drawn with half circles can improve performance if 014 * clipped when the parts of the graphic that aren't on the screen. To help 015 * readjust graphics and increase performance, this function requires the 016 * scale and bounding box to help calculate the new locations. 017 * @param id A unique identifier used to identify the symbol by Google map. 018 * The id will be the folder name that contains the graphic. 019 * @param name a string used to display to the user as the name of the 020 * graphic being created. 021 * @param description a brief description about the graphic being made and 022 * what it represents. 023 * @param symbolCode A 15 character symbolID corresponding to one of the 024 * graphics in the MIL-STD-2525C 025 * @param controlPoints The vertices of the graphics that make up the 026 * graphic. Passed in the format of a string, using decimal degrees 027 * separating lat and lon by a comma, separating coordinates by a space. 028 * The following format shall be used "x1,y1[,z1] [xn,yn[,zn]]..." 029 * @param altitudeMode Indicates whether the symbol should interpret 030 * altitudes as above sea level or above ground level. Options are 031 * "clampToGround", "relativeToGround" (from surface of earth), "absolute" 032 * (sea level), "relativeToSeaFloor" (from the bottom of major bodies of 033 * water). 034 * @param scale A number corresponding to how many meters one meter of our 035 * map represents. A value "50000" would mean 1:50K which means for every 036 * meter of our map it represents 50000 meters of real world distance. 037 * @param bbox The viewable area of the map. Passed in the format of a 038 * string "lowerLeftX,lowerLeftY,upperRightX,upperRightY." Not required 039 * but can speed up rendering in some cases. 040 * example: "-50.4,23.6,-42.2,24.2" 041 * @param modifiers A JSON string representing all the possible symbol 042 * modifiers represented in the MIL-STD-2525C. Format of the string will be 043 * {"modifiers": {"attributeName":"value"[,"attributeNamen":"valuen"]...}} 044 * The quotes are literal in the above notation. Example: 045 * {"modifiers": {"quantity":"4","speed":"300","azimuth":[100,200]}} 046 * @param format An enumeration: 0 for KML, 1 for JSON. 047 * @param symStd An enumeration: 0 for 2525Bch2, 1 for 2525C. 048 * @return A JSON string representation of the graphic. 049 */ 050 public String RenderSymbol(String id, String name, String description, 051 String symbolCode, String controlPoints, String altitudeMode, 052 double scale, String bbox, String modifiers, int format, int symStd); 053 054 055 /** 056 * Renders all multi-point symbols, creating KML or JSON for the user to 057 * parse and render as they like. 058 * This function requires the bounding box to help calculate the new 059 * locations. 060 * @param id A unique identifier used to identify the symbol by Google map. 061 * The id will be the folder name that contains the graphic. 062 * @param name a string used to display to the user as the name of the 063 * graphic being created. 064 * @param description a brief description about the graphic being made and 065 * what it represents. 066 * @param symbolCode A 15 character symbolID corresponding to one of the 067 * graphics in the MIL-STD-2525C 068 * @param controlPoints The vertices of the graphics that make up the 069 * graphic. Passed in the format of a string, using decimal degrees 070 * separating lat and lon by a comma, separating coordinates by a space. 071 * The following format shall be used "x1,y1 [xn,yn]..." 072 * @param pixelWidth pixel dimensions of the viewable map area 073 * @param pixelHeight pixel dimensions of the viewable map area 074 * @param bbox The viewable area of the map. Passed in the format of a 075 * string "lowerLeftX,lowerLeftY,upperRightX,upperRightY." 076 * example: "-50.4,23.6,-42.2,24.2" 077 * @param modifiers A JSON string representing all the possible symbol 078 * modifiers represented in the MIL-STD-2525C. Format of the string will be 079 * {"modifiers": {"attributeName":"value"[,"attributeNamen":"valuen"]...}} 080 * The quotes are literal in the above notation. Example: 081 * {"modifiers": {"quantity":"4","speed":"300","azimuth":[100,200]}} 082 * @param format An enumeration: 0 for KML, 1 for JSON. 083 * @param symStd An enumeration: 0 for 2525Bch2, 1 for 2525C. 084 * @return A JSON (1) or KML (0) string representation of the graphic. 085 */ 086 public String RenderSymbol2D(String id, String name, String description, String symbolCode, String controlPoints, 087 int pixelWidth, int pixelHeight, String bbox, String modifiers, int format, int symStd); 088 089}