<?php
/*
* Copyright 2001, Christoph Spoerri
*
* This file is part of the phpArcIMS connector.
*
* phpArcIMS is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* phpArcIMS is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Foobar; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
*/
/*
CHANGE LOG
*/
/**
* Defines the font style to be regular
* @package phparcims_symbol
* @constant string FONTSTYLE_REGULAR
*/
define (FONTSTYLE_REGULAR, 'regular');
/**
* Defines the font style to be bold
* @package phparcims_symbol
* @constant string FONTSTYLE_BOLD
*/
define (FONTSTYLE_BOLD, 'bold');
/**
* Defines the font style to be italic
* @package phparcims_symbol
* @constant string FONTSTYLE_ITALIC
*/
define (FONTSTYLE_ITALIC, 'italic');
/**
* Defines the font style to be underline
* @package phparcims_symbol
* @constant string FONTSTYLE_UNDERLINE
*/
define (FONTSTYLE_UNDERLINE, 'underline');
/**
* Defines the font style to be outline
* @package phparcims_symbol
* @constant string FONTSTYLE_OUTLINE
*/
define (FONTSTYLE_OUTLINE,'outline');
/**
* Defines the font style to be bolditalic
* @package phparcims_symbol
* @constant string FONTSTYLE_BOLDITALIC
*/
define (FONTSTYLE_BOLDITALIC,'bolditalic');
define (CHART_PIE, 'pie');
define (CHART_BAR, 'bar');
define (GRADIENT_BDIAG, 'bdiagonal');
define (GRADIENT_BDIAG, 'fdiagonal');
define (GRADIENT_HORIZONTAL, 'horizontal');
define (GRADIENT_VERTICAL,'vertical');
//4. HASHLINESYMBOL type ="foreground | background" [foreground]
define (PRINTMODE_TITLECAPS,'titlecaps');
define (PRINTMODE_UPPER,'allupper');
define (PRINTMODE_LOWER,'alllower');
define (PRINTMODE_NONE,'none');
define (SHIELD_INTERSTATE,'interstate');
define (SHIELD_USROAD,'usroad');
define (SHIELD_RECT,'rect');
define (SHIELD_OVAL,'oval');
define (LABEL_FULL, 'full');
define (LABEL_NUMERIC, 'numericonly');
define (TEXT_TOP,'top');
define (TEXT_CENTER, 'center');
define (TEXT_BOTTOM, 'bottom');
define (TEXT_LEFT, 'left');
define (TEXT_RIGHT, 'right');
define (TT_ROTATE_GEO, 'geographic');
define (TT_ROTATE_ARITH, 'arithmetic');
define (TT_ROTATE_MOD, 'mod_arithmetic');
/**
* This is an abstract class. Use one of its subclasses to create a symbol.
* @class aimsAbstrSymbol
* @package phparcims_symbol
*/
class aimsAbstrSymbol {
/**
* <blockquote style="font-family: arial; background-color:#EEEEEE">
* Used to make edges of labels and symbols smoother. When set to TRUE,
* antialiasing is active. Note that the time to generate a map may significantly increase when
* antialiasing is turned on.
* <p><sup>(ESRI)</sup></p></blockquote>
* @brief Specifies if antialising should be used for symbol.
* @class aimsAbstrSymbol
* @attribute public bool Antialiasing
*/
var $Antialiasing;
/**
* <blockquote style="font-family: arial; background-color:#EEEEEE">
* Value to set percentage of transparency. 1.0 is 0 percent
* transparent. 0.0 is 100 percent transparent.
* <p><sup>(ESRI)</sup></p></blockquote>
* @brief Specifies symbol transparency.
* @class aimsAbstrSymbol
* @attribute public int Transparency
*/
var $Transparency;
/**
* Abstract class, is never created directly.
* @constructor aimsAbstrSymbol
*/
function aimsAbstrSymbol() {
$this->Antialiasing = FALSE;
$this->Transparency = 1;
}
/**
* Returns the ArcXML attributes of the child object.
* @class aimsAbstrSymbol
* @method public returnTag
* @param string Parent The parent tag.
* @return String The ArcXML tag for this object.
*/
function returnTag($parent='') {
$tagStr='antialiasing="'.($this->Antialiasing?'true':'false').'" ';
$tagStr.='transparency="'.$this->Transparency.'" ';
return $tagStr;
}
}
/**
* This is an abstract class. Use one of its subclasses to create a symbol.
* @class aimsAbstrLineSymbol
* @package phparcims_symbol
* @extends aimsAbstrSymbol
*/
class aimsAbstrLineSymbol extends aimsAbstrSymbol {
/**
* The color of the line given as RGB values, e.g. array(0,234,234).
* @class aimsAbstrLineSymbol
* @attribute public array Color
*/
var $Color;
/**
* <blockquote style="font-family: arial; background-color:#EEEEEE">
* Determines if labels can overlap this symbol. When TRUE, labels
* can overlap. When FALSE, labels will not overlap the symbol. If labels are not drawing as expected,
* check if overlap is set to FALSE for this symbol or any other symbol in the ArcIMS service.
* <p><sup>(ESRI)</sup></p></blockquote>
* @brief Specifies if labels can overlap symbol.
* @class aimsAbstrLineSymbol
* @attribute public bool Overlap
*/
var $Overlap;
/**
* The width of the line symbol.
* @class aimsAbstrLineSymbol
* @attribute public int Width
*/
var $Width;
/**
* Abstract class, is never created directly.
* @constructor aimsAbstrLineSymbol
*/
function aimsAbstrLineSymbol() {
parent::aimsAbstrSymbol();
$this->Overlap = TRUE;
$this->Width = 0;
}
/**
* Returns the ArcXML attributes of the child object.
* @class aimsAbstrLineSymbol
* @method public returnTag
* @param string Parent The parent tag.
* @return String The ArcXML tag for this object.
*/
function returnTag($parent='') {
$tagStr=parent::returnTag($parent);
$tagStr.='overlap="'.($this->Overlap?'true':'false').'" ';
$tagStr.='width="'.$this->Width.'" ';
if (isset($this->Color)) {$tagStr.='color="'.implode(',',$this->Color).'" ';}
return $tagStr;
}
}
/**
* This is an abstract class. Use one of its subclasses to create a symbol.
* @class aimsAbstrFont1Symbol
* @extends aimsAbstrSymbol
* @package phparcims_symbol
*/
class aimsAbstrFont1Symbol extends aimsAbstrSymbol {
/**
* <blockquote style="font-family: arial; background-color:#EEEEEE">
* Font name. The name is case sensitive. If font name uses "&",
* use "&" instead. For example, ESRI Transportation & Civic should be written as
* ESRI Transportation & Civic. For Feature Services, the font must reside on the client
* machine or else the system default font is used.
* <p><sup>(ESRI)</sup></p></blockquote>
* @brief The font name.
* @class aimsAbstrFont1Symbol
* @attribute public string Font
*/
var $Font;
/**
* The font color given as RGB values, e.g. array(0,234,234).
* @class aimsAbstrFont1Symbol
* @attribute public array Fontcolor
*/
var $Fontcolor;
/**
* The font size.
* @class aimsAbstrFont1Symbol
* @attribute public int Fontsize
*/
var $Fontsize;
/**
* The font style. It can be set by using the global constants {@link FONTSTYLE_REGULAR},
* {@link FONTSTYLE_BOLD}, {@link FONTSTYLE_ITALIC}, {@link FONTSTYLE_UNDERLINE}, {@link FONTSTYLE_OUTLINE}
* or {@link FONTSTYLE_BOLDITALIC}.
* @brief The font sytle.
* @class aimsAbstrFont1Symbol
* @attribute public string Fontstyle
*/
var $Fontstyle;
/**
* Abstract class, is never created directly.
* @constructor aimsAbstrFont1Symbol
*/
function aimsAbstrFont1Symbol( ) {
parent::aimsAbstrSymbol();
$this->Font = 'Arial';
$this->Fontcolor = array(0,0,0);
$this->Fontsize = 12;
$this->Fontstyle = 'regular';
}
/**
* Returns the ArcXML attributes of the child object.
* @class aimsAbstrFont1Symbol
* @method public returnTag
* @param string Parent The parent tag.
* @return String The ArcXML tag for this object.
*/
function returnTag($parent='') {
$tagStr=parent::returnTag($parent);
$tagStr.='font="'.$this->Font.'" ';
$tagStr.='fontsize="'.$this->Fontsize.'" ';
$tagStr.='fontcolor="'.implode(',',$this->Fontcolor).'" ';
$tagStr.='fontstyle="'.$this->Fontstyle.'" ';
return $tagStr;
}
}
/**
* This is an abstract class. Use one of its subclasses to create a symbol.
* @class aimsAbstrFont2Symbol
* @extends aimsAbstrFont1Symbol
* @package phparcims_symbol
*/
class aimsAbstrFont2Symbol extends aimsAbstrFont1Symbol {
/**
* The outline color given as RGB values, e.g. array(0,234,234).
* @class aimsAbstrFont2Symbol
* @attribute public array Outline
*/
var $Outline;
/**
* The 'glow' color given as RGB values, e.g. array(0,234,234).
* @class aimsAbstrFont2Symbol
* @attribute public array Glowing
*/
var $Glowing;
/**
* The distance in pixel from the first point of the feature to label.
* @class aimsAbstrFont2Symbol
* @attribute public int Interval
*/
var $Interval;
/**
* The shadow color given as RGB values, e.g. array(0,234,234).
* @class aimsAbstrFont2Symbol
* @attribute public array Shadow
*/
var $Shadow;
/**
* Abstract class, is never created directly.
* @constructor aimsAbstrFont2Symbol
*/
function aimsAbstrFont2Symbol( ){
parent::aimsAbstrFont1Symbol();
$this->Interval = 10;
}
/**
* Returns the ArcXML attributes of the child object.
* @class aimsAbstrFont2Symbol
* @method public returnTag
* @param string Parent The parent tag.
* @return String The ArcXML tag for this object.
*/
function returnTag($parent='') {
$tagStr=parent::returnTag($parent);
if ($this->Outline) $tagStr.=' outline="'.implode(',',$this->Outline).'" ';
if ($this->Glowing) $tagStr.=' glowing="'.implode(',',$this->Glowing).'" ';
if ($this->Shadow) $tagStr.=' shadow="'.implode(',',$this->Shadow).'" ';
$tagStr.=' interval="'.$this->Interval.'" ';
return $tagStr;
}
}
/**
* This is an abstract class. Use one of its subclasses to create a symbol.
* @class aimsAbstrFont3Symbol
* @extends aimsAbstrFont1Symbol
* @package phparcims_symbol
*/
class aimsAbstrFont3Symbol extends aimsAbstrFont1Symbol
{
var $Angle;
/**
* The 'glow' color given as RGB values, e.g. array(0,234,234).
* @class aimsAbstrFont3Symbol
* @attribute public array Glowing
*/
var $Glowing;
/**
* The 'glow' color given as RGB values, e.g. array(0,234,234).
* @class aimsAbstrFont2Symbol
* @attribute public array Glowing
*/
var $Outline;
/**
* <blockquote style="font-family: arial; background-color:#EEEEEE">
* Determines if labels can overlap this symbol. When TRUE, labels
* can overlap. When FALSE, labels will not overlap the symbol. If labels are not drawing as expected,
* check if overlap is set to FALSE for this symbol or any other symbol in the ArcIMS service.
* <p><sup>(ESRI)</sup></p></blockquote>
* @brief Specifies if labels can overlap symbol.
* @class aimsAbstrLineSymbol
* @attribute public bool Overlap
*/
var $Overlap;
function aimsAbstrFont3Symbol( ) {
parent::aimsAbstrFont1Symbol();
$Angle = 0;
$Overlap = TRUE;
}
/**
* Returns the ArcXML attributes of the child object.
* @class aimsAbstrFont3Symbol
* @method public returnTag
* @param string Parent The parent tag.
* @return String The ArcXML tag for this object.
*/
function returnTag($parent='') {
$tagStr=parent::returnTag($parent);
if ($this->Outline) $tagStr.=' outline="'.implode(',',$this->Outline).'" ';
if ($this->Glowing) $tagStr.=' glowing="'.implode(',',$this->Glowing).'" ';
$tagStr.=' overlap="'.($this->Overlap?'true':'false').'" ';
$tagStr.=' angle="'.$this->Angle.'" ';
return $tagStr;
}
}
/**
* <blockquote style="font-family: arial; background-color:#EEEEEE">
* <b>Description</b>: Symbolizes point features using one of the predefined symbol types:
* circle, triangle, square, cross, or star.
* <p><b>Restrictions</b>:
* <ul>
* <li>{@link aimsSimpleMarkerSymbol::Overlap} is valid only for Image Services.
* It is ignored when using Feature Services.</li>
* <li>In ArcMap Image Services, symbol is valid only in {@link aimsAcetateLayer}.</li>
* <li>Known limitation with {@link aimsSimpleMarkerSymbol::Outline} in ArcMap Image Services:
* An outline does not show when the attribute type is "triangle" or "star".</li>
* </ul>
* <p><sup>(ESRI)</sup></p></blockquote>
* @class aimsSimpleMarkerSymbol
* @package phparcims_symbol
* @extends aimsAbstrLineSymbol
*/
class aimsSimpleMarkerSymbol extends aimsAbstrLineSymbol {
/**
* Outline color using RGB values in the format array(R,G,B).
* @class aimsSimpleMarkerSymbol
* @attribute public array Outline
*/
var $Outline; //"0,0,0 - 255,255,255
/**
* Shadow color using RGB values in the format array(R,G,B).
* @class aimsSimpleMarkerSymbol
* @attribute public array Shadow
*/
var $Shadow; //"0,0,0 - 255,255,255"
/**
* <blockquote style="font-family: arial; background-color:#EEEEEE">
* By default, a marker symbol used on polygon layers draws markers at all polygon vertices.
* If usecentroid is "true", marker is placed in the centroid of the polygon. If multiple polygon
* parts exist, the marker falls on the part with the biggest area.
* <p><sup>(ESRI)</sup></p></blockquote>
* @brief Specifies if symbol should be drawn in the center of feature.
* @class aimsSimpleMarkerSymbol
* @attribute public bool Usecentroid
*/
var $Usecentroid; //"true | false" [false]
/**
* Symbol type. Possible values are: circle | triangle | square | cross | star (Default: circle).
* @class aimsSimpleMarkerSymbol
* @attribute public string Type
*/
var $Type;
/**
* Creates a aimsSimpleMarkerSymbol object of type aType.
* See {@link aimsSimpleMarkerSymbol::Type} for possible types.
* @constructor aimsSimpleMarkerSymbol
* @param optional string aType The type of marker symbol (default=circle).
* @return void
*/
function aimsSimpleMarkerSymbol($t='circle') {
parent::aimsAbstrLineSymbol();
$this->Type = $t;
$this->Usecentroid = TRUE;
}
/**
* Returns the ArcXML tag of the object.
* @class aimsSimpleMarkerSymbol
* @method public returnTag
* @param string Parent The parent tag.
* @return String The ArcXML tag for this object.
*/
function returnTag($parent=''){
$tagStr='<SIMPLEMARKERSYMBOL';
$tagStr.=parent::returnTag($parent);
if (isset($this->Outline)) $tagStr.=' outline="'.$this->Outline.'" ';
if (isset($this->Shadow)) $tagStr.=' shadow="'.$this->Shadow.'" ';
$tagStr.=' type="'.$this->Type.'" ';
$tagStr.=' usecentroid="'.$this->Usecentroid.'" ';
return $tagStr.'></SIMPLEMARKERSYMBOL>';
}
}
/**
* <blockquote style="font-family: arial; background-color:#EEEEEE">
* <b>Description</b>: Symbol for line features.
* <p><b>Restrictions</b>:
* <ul>
* <li>Overlap is valid only for Image Services. It is ignored when using Feature Services.</li>
* <li>In ArcMap Image Services, symbol is valid only in acetate layers.</li>
* </ul>
* <p><sup>(ESRI)</sup></p></blockquote>
* @class aimsSimpleLineSymbol
* @package phparcims_symbol
* @extends aimsAbstrLineSymbol
*/
class aimsSimpleLineSymbol extends aimsAbstrLineSymbol {
/**
* Specify the line ends: butt | round | square (default = butt).
* @class aimsSimpleLineSymbol
* @attribute public string Captype
*/
var $Captype='';
/**
* Specify how line jointes are drawn: round | miter | bevel (default = round).
* @class aimsSimpleLineSymbol
* @attribute public string Jointype
*/
var $Jointype='';
/**
* Specifies the line type: solid | dash | dot | dash_dot | dash_dot_dot (default = solid).
* @class aimsSimpleLineSymbol
* @attribute public string Type
*/
var $Type='';
/**
* Defines a line symbol.
* @constructor aimsSimpleLineSymbol
* @package phparcims_symbol
*/
function aimsSimpleLineSymbol() {
parent::aimsAbstrLineSymbol();
$this->Captype = 'butt';
$this->Jointype = 'round';
$this->Type = 'solid';
}
/**
* Returns the ArcXML tag of the object.
* @class aimsSimpleLineSymbol
* @method public returnTag
* @param string Parent The parent tag.
* @return String The ArcXML tag for this object.
*/
function returnTag($parent='') {
$tagStr='<SIMPLELINESYMBOL ';
$tagStr.=parent::returnTag($parent);
$tagStr.='captype ="'.$this->Captype.'" ';
$tagStr.='jointype ="'.$this->Jointype.'" ';
$tagStr.='type ="'.$this->Type.'" ';
return $tagStr.'></SIMPLELINESYMBOL>';
}
}
/**
* <blockquote style="background-color:#EEEEEE;">
* <b>Description</b>: Symbol for polygon features.
* <p><b>Restrictions</b>:<ul>
* <li>Overlap is valid only for Image Services. It is ignored when using Feature Services.</li>
* <li>In ArcMap Image Services, symbol is valid only in acetate layers.</li>
* </ul></p>
* <b>Notes</b>:<ul>
* <li>For more complex boundary symbols, SIMPLELINESYMBOL can be used on polygon layers.</li>
* <li>Transparency takes precedence over filltransparency and boundarytransparency.</li>
* <li>To make both the fill and boundary of a polygon transparent, set filltransparency="0.0" and boundarytransparency="0.0". Do not use transparency.</li>
* </ul>
* <p><sup>(ESRI)</sup></p></blockquote>
* @class aimsSimplePolygonSymbol
* @package phparcims_symbol
* @inherited aimsAbstrSymbol
*/
class aimsSimplePolygonSymbol extends aimsAbstrSymbol{
/**
* Specifies if polygon has a boundary or not (default = TRUE).
* @class aimsSimplePolygonSymbol
* @attribute public bool Boundary
*/
var $Boundary;
/**
* The boundary color using RGB values in the format 'R,G,B' (e.g. array(234,234,0)).
* @class aimsSimplePolygonSymbol
* @attribute public array Boundarycolor
*/
var $Boundarycolor;
/**
* The boundary line end type: butt | round | square (default=butt).
* @class aimsSimplePolygonSymbol
* @attribute public string Boundarycaptype
*/
var $Boundarycaptype;
/**
* The boundary line join types: round | miter | bevel (default = round).
* @class aimsSimplePolygonSymbol
* @attribute public string Boundaryjointype
*/
var $Boundaryjointype;
/**
* The precentage of boundary transparency: 1.0 to 0.0 (0.0 = 100% transparency).
* @class aimsSimplePolygonSymbol
* @attribute public array Boundarytransparency
*/
var $Boundarytransparency;
/**
* The boundary type: solid | dash | dot | dash_dot | dash_dot_dot (default = solid).
* @class aimsSimplePolygonSymbol
* @attribute public string Boundarytype
*/
var $Boundarytype;
/**
* The width of the boundary.
* @class aimsSimplePolygonSymbol
* @attribute public int Boundarywidth
*/
var $Boundarywidth;
/**
* The fill color using RGB values in the format 'R,G,B' (e.g. array(234,234,0)).
* @class aimsSimplePolygonSymbol
* @attribute public array Fillcolor
*/
var $Fillcolor;
/**
* The distance between the lines for hatch patterns.
* @class aimsSimplePolygonSymbol
* @attribute public int Fillinterval
*/
var $Fillinterval;
/**
* The transparency used for the filling the polygon. 1.0 to 0.0 (0.0 = 100% transparency).
* @class aimsSimplePolygonSymbol
* @attribute public array Filltransparency
*/
var $Filltransparency;
/**
* The fill type: solid | bdiagonal | fdiagonal | cross | diagcross | horizontal | vertical | gray | lightgray | darkgray (default=solid).
* @class aimsSimplePolygonSymbol
* @attribute public string Filltype
*/
var $Filltype;
/**
* <blockquote style="font-family: arial; background-color:#EEEEEE">
* Determines if labels can overlap this symbol. When TRUE, labels can
* overlap. When FALSE, labels will not overlap the symbol. If labels are not drawing as expected, check
* if overlap is set to FALSE for this symbol or any other symbol in the ArcIMS service.
* <p><sup>(ESRI)</sup></p></blockquote>
* @class aimsSimplePolygonSymbol
* @attribute public bool Overlap
*/
var $Overlap;
/**
* Constructor for aimsSimplePolygonSymbol.
* @constructor aimsSimplePolygonSymbol
* @package phparcims_symbol
*/
function aimsSimplePolyonSymbol()
{
parent::aimsAbstrSymbol();
$this->Boundary = TRUE;
$this->Boundarycolor = array(0,0,0);
$this->Boundarycaptype = 'butt';
$this->Boundaryjointype = 'round';
$this->Boundarytransparency = 1;
$this->Boundarytype = 'solid';
$this->Boundarywidth = 1;
$this->Fillcolor = array(0,200,0);
$this->Fillinterval = 6;
$this->Filltransparency = 1;
$this->Filltype = 'solid';
$this->Overlap = TRUE;
}
/**
* Returns the ArcXML tag of the object.
* @class aimsSimplePolygonSymbol
* @method public returnTag
* @param string Parent The parent tag.
* @return String The ArcXML tag for this object.
*/
function returnTag($parent=''){
$tagStr='<SIMPLEPOLYGONSYMBOL ';
$tagStr.=parent::returnTag($parent);
if ($this->Boundary) $tagStr.='boundary ="'.$this->Boundary.'" ';
if ($this->Boundarycaptype) $tagStr.=' boundarycaptype="'.$this->Boundarycaptype.'" ';
if ($this->Boundarycolor) $tagStr.=' boundarycolor="'.implode(',',$this->Boundarycolor).'" ';
if ($this->Boundaryjointype) $tagStr.=' boundaryjointype="'.$this->Boundaryjointype.'" ';
if ($this->Boundarytransparency) $tagStr.=' boundarytransparency="'.$this->Boundarytransparency.'" ';
if ($this->Boundarytype) $tagStr.=' boundarytype="'.$this->Boundarytype.'" ';
if ($this->Boundarywidth) $tagStr.=' boundarywidth="'.$this->Boundarywidth.'" ';
if ($this->Fillcolor) $tagStr.=' fillcolor="'.implode(',',$this->Fillcolor).'" ';
if ($this->Fillinterval) $tagStr.=' fillinterval="'.$this->Fillinterval.'" ';
if ($this->Filltransparency) $tagStr.=' filltransparency="'.$this->Filltransparency.'" ';
if ($this->Filltype) $tagStr.=' filltype="'.$this->Filltype.'" ';
if ($this->Overlap) $tagStr.=' overlap="'.$this->Overlap.'" ';
return $tagStr.'></SIMPLEPOLYGONSYMBOL>';
}
}
/**
* <blockquote style="font-family: arial; background-color:#EEEEEE">
* <b>Description</b>: Symbol used to label point, line, and
* polygon layers.
* <p><b>Restrictions</b>:<ul>
* <li>Outline and glowing should not be used together; use one or the other.</li>
* <li>Not valid with ArcMap Server.</li>
* </ul>
* </p><b>Notes</b>:<ul>
* <li>aimsTextSymbol is used to label features in layers. To add text to an {@link aimsAcetateLayer}, use an {@link aimsText} object.</li>
* </ul>
* <p><sup>(ESRI)</sup></p></blockquote>
* @brief Symbol used to define text
* @class aimsTextSymbol
* @package phparcims_symbol
* @extends aimsAbstrFont2Symbol
*/
class aimsTextSymbol extends aimsAbstrFont2Symbol {
/**
* The background color using RGB values in the format 'R,G,B' (e.g. array(234,234,0)).
* @class aimsTextSymbol
* @attribute public array Blockout
*/
var $Blockout;
/**
* <blockquote style="font-family: arial; background-color:#EEEEEE">
* Determines how labels are printed. If "none" is used, no change is
* made to the label: Welcome to ArcIMS. If "alllower" is used, all letters are lowercase: welcome to
* arcims. If "allupper" is used, all letters are uppercase: WELCOME TO ARCIMS. If "titlecaps" is used,
* the first letter of each word in a label is uppercase and everything else is lowercase: Welcome To
* Arcims.
* <p><sup>(ESRI)</sup></p></blockquote>
* Values: titlecaps | allupper | alllower | none (default=none)
* @brief Specifies how labels should be printed.
* @class aimsTextSymbol
* @attribute public string Printmode
*/
var $Printmode;
/**
* Constructor for aimsTextSymbol.
* @constructor aimsTextSymbol
*/
function aimsTextSymbol( ) {
parent::aimsAbstrFont2Symbol();
$this->Printmode = none;
}
/**
* Returns the ArcXML tag of the object.
* @class aimsTextSymbol
* @method public returnTag
* @param string Parent The parent tag.
* @return String The ArcXML tag for this object.
*/
function returnTag($parent='') {
$tagStr='<TEXTSYMBOL ';
$tagStr.=parent::returnTag($parent);
if ($this->Blockout) $tagStr.='blockout ="'.$this->Blockout.'" ';
if ($this->Printmode) $tagStr.='printmode ="'.$this->Printmode.'" ';
return $tagStr.' />';
}
}
/**
* <blockquote style="font-family: arial; background-color:#EEEEEE">
* <b>Description</b>: Adds static text to an {@link aimsAcetateLayer}.
* <p><b>Restrictions</b>:<ul>
* <li>aimsTextMarkerSymbol is part of an object in an {@link aimsAcetateLayer} and can only be used with Image
* Services in an HTML viewer.</li>
* <li>Outline and glowing should not be used together; use one or the other.</li>
* <li>This element is not available from the ArcIMS Author interface.</li>
* </ul></p>
* <b>Notes</b>:<ul>
* <li>aimsTextMarkerSymbol is used only in {@link aimsAcetateLayer}. To label features, use {@link aimsTextSymbol}.</li>
* </ul>
* <p><sup>(ESRI)</sup></p></blockquote>
* @class aimsTextMarkerSymbol
* @package phparcims_symbol
* @extends aimsAbstrFont3Symbol
*/
class aimsTextMarkerSymbol extends aimsAbstrFont3Symbol {
/**
* The background color using RGB values in the format 'R,G,B' (e.g. array(234,234,0)).
* @class aimsTextMarkerSymbol
* @attribute public array Blockout
*/
var $Blockout;
/**
* Specifies the horizontal alignment of the text: left | center | right (default = right).
* @class aimsTextMarkerSymbol
* @attribute public string Halignment
*/
var $Halignment;
/**
* @class aimsTextMarkerSymbol
* @attribute public string Interval
*/
var $Interval;
/**
* Specifies the vertical alignment of the text: top | center | bottom (default = top).
* @class aimsTextMarkerSymbol
* @attribute public string Valignment
*/
var $Valignment;
/**
* <blockquote style="font-family: arial; background-color:#EEEEEE">
* Determines how labels are printed. If "none" is used, no change is
* made to the label: Welcome to ArcIMS. If "alllower" is used, all letters are lowercase: welcome to
* arcims. If "allupper" is used, all letters are uppercase: WELCOME TO ARCIMS. If "titlecaps" is used,
* the first letter of each word in a label is uppercase and everything else is lowercase: Welcome To
* Arcims.
* <p><sup>(ESRI)</sup></p></blockquote>
* Values: titlecaps | allupper | alllower | none (default=none)
* @brief Specifies how labels should be printed.
* @class aimsTextMarkerSymbol
* @attribute public string Printmode
*/
var $Printmode;
/**
* Constructor for aimsTextMarkerSymbol.
* @constructor aimsTextMarkerSymbol
* @package phparcims_symbol
*/
function aimsTextMarkerSymbol( )
{
parent::aimsAbstrFont3Symbol();
$this->Halignment = 'right';
$this->Interval = 0;
$this->Valignment = 'top';
$this->Printmode = 'none';
}
/**
* Returns the ArcXML tag of the object.
* @class aimsTextMarkerSymbol
* @method public returnTag
* @param string Parent The parent tag.
* @return String The ArcXML tag for this object.
*/
function returnTag($parent='') {
$tagStr='<TEXTMARKERSYMBOL ';
$tagStr.=parent::returnTag($parent);
if ($this->Blockout) $tagStr.='blockout ="'.$this->Blockout.'" ';
if ($this->Halignment) $tagStr.='halignment ="'.$this->Halignment.'" ';
if ($this->Interval) $tagStr.='interval ="'.$this->Interval.'" ';
if ($this->Printmode) $tagStr.='printmode ="'.$this->Printmode.'" ';
if ($this->Valignment) $tagStr.='valignment ="'.$this->Valignment.'" ';
return $tagStr.' />';
}
}
/**
* @class aimsRasterFillSymbol
* @package phparcims_symbol
* @extends aimsAbstrSymbol
*/
class aimsRasterFillSymbol extends aimsAbstrSymbol {
var $Image;
var $Overlap;
var $Url;
function aimsRasterFillSymbol( ) {
parent::aimsAbstrSymbol();
$this->Overlap = TRUE;
}
/**
* Returns the ArcXML tag of the object.
* @class aimsRasterFillSymbol
* @method public returnTag
* @param string Parent The parent tag.
* @return String The ArcXML tag for this object.
*/
function returnTag($parent='') {
$tagStr='<RASTERFILLSYMBOL ';
$tagStr.=parent::returnTag($parent);
return $tagStr.' />';
}
}
/**
* @class aimsRasterMarkerSymbol
* @package phparcims_symbol
* @extends aimsRasterFillSymbol
*/
class aimsRasterMarkerSymbol extends aimsRasterFillSymbol {
var $Hotspot;
var $Shadow;
var $Size;
var $Usecentroid;
function aimsRasterMarkerSymbol( )
{
$this->Usecentroid = TRUE;
}
/**
* Returns the ArcXML tag of the object.
* @class aimsRasterMarkerSymbol
* @method public returnTag
* @param string Parent The parent tag.
* @return String The ArcXML tag for this object.
*/
function returnTag($parent='') {
$tagStr='<RASTERMARKERSYMBOL ';
$tagStr.=parent::returnTag($parent);
return $tagStr.' />';
}
}
/**
* @class aimsTrueTypeMarkerSymbol
* @package phparcims_symbol
* @extends aimsAbstrFont3Symbol
*/
class aimsTrueTypeMarkerSymbol extends aimsAbstrFont3Symbol {
var $Anglefield;
var $Character;
var $Rotatemethod;
var $Shadow;
var $Usecentroid;
function aimsTrueTypeMarkerSymbol( )
{
$this->Rotatemethod = 'mod_arithmetic';
$this->Usecentroid = TRUE;
}
/**
* Returns the ArcXML tag of the object.
* @class aimsTrueTypeMarkerSymbol
* @method public returnTag
* @param string Parent The parent tag.
* @return String The ArcXML tag for this object.
*/
function returnTag($parent='') {
$tagStr='<TRUETYPEMARKERSYMBOL ';
$tagStr.=parent::returnTag($parent);
return $tagStr.' />';
}
}
class aimsSymbol{
// antialiasing ="true | false" [false]
// transparency ="0.0 - 1.0" [1.0]
/* var $Antialiasing;
var $Transparency; //="0.0 - 1.0" [1.0]
*/
/*
Possible symbols are
1. CALLOUTMARKERSYMBOL
backcolor ="0,0,0 - 255,255,255" [255,255,255]
boundarycolor ="0,0,0 - 255,255,255" [0,0,0]
font ="Any system font" [Arial]
fontcolor ="0,0,0 - 255,255,255" [0,0,0]
fontsize ="1 - NNN" [12]
fontstyle ="regular | bold | italic | underline | outline | bolditalic" [regular]
glowing ="0,0,0 - 255,255,255"
interval ="0 - NNN" [10]
outline ="0,0,0 - 255,255,255"
shadow ="0,0,0 - 255,255,255"
2. CHARTSYMBOL
maxsize ="1 - NNN"
maxvalue ="1 - NNN"
minsize ="1 - NNN"
minvalue ="1 - NNN"
mode ="pie | bar" [pie]
outline ="0,0,0 - 255,255,255" [none]
shadow ="0,0,0 - 255,255,255"
size ="1 - NNN"
sizefield ="string"
3. GRADIENTFILLSYMBOL
finishcolor ="0,0,0 - 255,255,255" [0,255,0]
overlap ="true | false" [true]
startcolor ="0,0,0 - 255,255,255" [255,0,0]
type ="bdiagonal | fdiagonal | horizontal | vertical" [bdiagonal]
4. HASHLINESYMBOL
color ="0,0,0 - 255,255,255" [0,0,0]
interval ="0 - NNN" [8]
linethickness ="1 - NNN" [1]
overlap ="true | false" [true]
tickthickness ="1 - NNN" [1]
type ="foreground | background" [foreground]
width ="1 - NNN" [6]
5. RASTERFILLSYMBOL
image ="path to image file"
url ="url string"
overlap ="true | false" [true]
6. RASTERMARKERSYMBOL
image ="path to image file"
url ="url string"
hotspot ="0,0 - N,N" [centered]
overlap ="true | false" [true]
shadow ="0,0,0 - 255,255,255"
size ="1,1 - N,N"
usecentroid ="true | false" [false]
7. RASTERSHIELDSYMBOL
image ="path to image file"
url ="url string"
boundary ="true | false" [false]
font ="Any system font" [Arial]
fontcolor ="0,0,0 - 255,255,255" [0,0,0]
fontsize ="1 - NNN" [12]
fontstyle ="regular | bold | italic | underline | outline | bolditalic" [regular]
labelmode ="full | numericonly" [numericonly]
printmode ="titlecaps | allupper | alllower | none" [none]
shadow ="0,0,0 - 255,255,255"
textposition ="0,0 - N,N"
8. SHIELDSYMBOL
type ="interstate | usroad | rect | oval"
font ="Any system font" [Arial]
fontcolor ="0,0,0 - 255,255,255" [0,0,0]
fontsize ="1 - NNN" [12]
fontstyle ="regular | bold | italic | underline | outline | bolditalic" [regular]
labelmode ="full | numericonly" [numericonly]
minsize ="1 - NNN" [1]
shadow ="0,0,0 - 255,255,255"
12. TEXTMARKERSYMBOL
angle ="0.0 - 360.0" [0]
blockout ="0,0,0 - 255,255,255"
font ="Any system font" [Arial]
fontcolor ="0,0,0 - 255,255,255" [0,0,0]
fontsize ="1 - NNN" [10]
fontstyle ="regular | bold | italic | underline | outline | bolditalic" [regular]
glowing ="0,0,0 - 255,255,255"
halignment ="left | center | right" [right]
interval ="0 - NNN" [0]
outline ="0,0,0 - 255,255,255"
overlap ="true | false" [true]
printmode ="titlecaps | allupper | alllower | none" [none]
valignment ="top | center | bottom" [top]
14. TRUETYPEMARKERSYMBOL
character ="32 - 255"
angle ="0.0 - 360.0" [0]
anglefield ="0.0 - 360.0" [0]
font ="Any system font" [Arial]
fontcolor ="0,0,0 - 255,255,255" [0,0,0]
fontsize ="1 - NNN" [12]
fontstyle ="regular | bold | italic | underline | outline | bolditalic" [regular]
glowing ="0,0,0 - 255,255,255"
outline ="0,0,0 - 255,255,255"
overlap ="true | false" [true]
rotatemethod ="geographic | arithmetic | mod_arithmetic" [mod_arithmetic]
shadow ="0,0,0 - 255,255,255"
usecentroid ="true | false" [false]
*/
var $Angle; // "0.0 - 360.0" [0]
var $Anglefield; // "0.0 - 360.0" [0]
var $Antialiasing; // "true | false" [false]
var $Backcolor; // "0,0,0 - 255,255,255" [255,255,255]
var $Blockout; // "0,0,0 - 255,255,255"
var $Boundary; // "true | false" [false] [true]
var $Boundarycaptype; // "butt | round | square" [butt]
var $Boundarycolor; // "0,0,0 - 255,255,255" [0,0,0]
var $Boundaryjointype; // "round | miter | bevel" [round]
var $Boundarytransparency; // "0.0 - 1.0" [1]
var $Boundarytype; // "solid | dash | dot | dash_dot | dash_dot_dot" [solid]
var $Boundarywidth; // "1 - NNN" [1]
var $Captype; // "butt | round | square" [butt]
var $Character; // "32 - 255"
var $Color; // "0,0,0 - 255,255,255" [0,0,0]
var $Fillcolor; // "0,0,0 - 255,255,255" [0,200,0]
var $Fillinterval; // "2 - NNN" [6]
var $Filltransparency; // "0.0 - 1.0" [1]
var $Filltype; // "solid | bdiagonal | fdiagonal | cross | diagcross | horizontal | vertical | gray | lightgray | darkgray" [solid]
var $Finishcolor; // "0,0,0 - 255,255,255" [0,255,0]
var $Font; // "Any system font" [Arial]
var $Fontcolor; // "0,0,0 - 255,255,255" [0,0,0]
var $Fontsize; // "1 - NNN" [12] [10]
var $Fontstyle; // "regular | bold | italic | underline | outline | bolditalic" [regular]
var $Glowing; // "0,0,0 - 255,255,255"
var $Halignment; // "left | center | right" [right]
var $Hotspot; // "0,0 - N,N" [centered]
var $Image; // "path to image file"
var $Interval; // "0 - NNN" [10] [8] [0]
var $Jointype; // "round | miter | bevel" [round]
var $Linethickness; // "1 - NNN" [1]
var $Labelmode; // "full | numericonly" [numericonly]
var $Maxsize; // "1 - NNN"
var $Maxvalue; // "1 - NNN"
var $Minsize; // "1 - NNN" [1]
var $Minvalue; // "1 - NNN"
var $Mode; // "pie | bar" [pie]
var $Outline; // "0,0,0 - 255,255,255"
var $Overlap; // "true | false" [true]
var $Printmode; // "titlecaps | allupper | alllower | none" [none]
var $Rotatemethod; // "geographic | arithmetic | mod_arithmetic" [mod_arithmetic]
var $Shadow; // "0,0,0 - 255,255,255"
var $Size; // "1 - NNN" // "1,1 - N,N"
var $Sizefield; // "string"
var $Startcolor; // "0,0,0 - 255,255,255" [255,0,0]
var $Textposition; // "0,0 - N,N"
var $Tickthickness; // "1 - NNN" [1]
var $Transparency; // "0.0 - 1.0" [1.0]
var $Type; // "bdiagonal | fdiagonal | horizontal | vertical" [bdiagonal] / "foreground | background" [foreground] // "interstate | usroad | rect | oval" // "solid | dash | dot | dash_dot | dash_dot_dot" [solid] // "circle | triangle | square | cross | star" [circle]
var $Url; // "url string"
var $Usecentroid; // "true | false" [false]
var $Valignment; // "top | center | bottom" [top]
var $Width; // "1 - NNN" [6] [3] // "0 - NNN" [0]
var $Symbol; //the type fo symbol
function aimsSymbol($p0, $p1=0, $p2=0 ){
switch($p0){
case 5:
$Image = $p1;
$Url = $p2;
break;
case 6:
$Image = $p1;
$Url = $p2;
break;
case 7:
$Image = $p1;
$Url = $p2;
break;
case 8:
$Type = $p1;
case 14:
$Character = $p1;
break;
}
$this->Symbol=$p0;
return 1;
}
function returnTag($parent){
switch ($this->Symbol) {
case 1:
$tagStr='<CALLOUTMARKERSYMBOL ';
if ($this->Antialising) $tagStr.='antialiasing = "'.$this->Antialiasing.'" ';
if ($this->Backcolor) $tagStr.='backcolor = "'.$this->Backcolor.'" ';
if ($this->Boundarycolor) $tagStr.='boundarycolor ="'.$this->Boundarycolor.'" ';
if ($this->Font) $tagStr.='font ="'.$this->Font.'" ';
if ($this->Fontcolor) $tagStr.='fontcolor ="'.$this->Fontcolor.'" ';
if ($this->Fontsize) $tagStr.='fontsize ="'.$this->Fontsize.'" ';
if ($this->Fontstyle) $tagStr.='fontstyle ="'.$this->Fontstyle.'" ';
if ($this->Glowing) $tagStr.='glowing ="'.$this->Glowing.'" ';
if ($this->Interval) $tagStr.='interval ="'.$this->Interval.'" ';
if ($this->Outline) $tagStr.='outline ="'.$this->Outline.'" ';
if ($this->Shadow) $tagStr.='shadow ="'.$this->Shadow.'" ';
if ($this->Transparency) $tagStr.='transparency ="'.$this->Transparency.'" ';
return $tagStr.'</CALLOUTMARKERSYMBOL>';
break;
case 2:
$tagStr='<CHARTSYMBOL ';
if ($this->Antialising) $tagStr.='antialiasing = "'.$this->Antialiasing.'" ';
if ($this->Maxsize) $tagStr.='maxsize ="'.$this->Maxsize.'" ';
if ($this->Maxvalue) $tagStr.='maxvalue ="'.$this->Maxvalue.'" ';
if ($this->Minsize) $tagStr.='minsize ="'.$this->Minsize.'" ';
if ($this->Minvalue) $tagStr.='minvalue ="'.$this->Minvalue.'" ';
if ($this->Mode) $tagStr.='mode ="'.$this->Mode.'" ';
if ($this->Outline) $tagStr.='outline ="'.$this->Outline.'" ';
if ($this->Shadow) $tagStr.='shadow ="'.$this->Shadow.'" ';
if ($this->Size) $tagStr.='size ="'.$this->Size.'" ';
if ($this->sizefield) $tagStr.='sizefield ="'.$this->sizefield.'" ';
if ($this->Transparency) $tagStr.='transparency ="'.$this->Transparency.'" ';
return $tagStr.'</CHARTSYMBOL>';
case 3:
$tagStr='<GRADIENTFILLSYMBOL ';
if ($this->Antialising) $tagStr.='antialiasing ="'.$this->Antialiasing.'" ';
if ($this-Finishcolor) $tagStr.='finishcolor ="'.$this->Finishcolor.'" ';
if ($this->Overlap) $tagStr.='overlap ="'.$this->Overlap.'" ';
if ($this->Startcolor) $tagStr.='startcolor ="'.$this->Startcolor.'" ';
if ($this->Transparency) $tagStr.='transparency ="'.$this->Transparency.'" ';
if ($this->Type) $tagStr.='type ="'.$this->Type.'" ';
return $tagStr.'</GRADIENTFILLSYMBOL>';
case 4:
$tagStr='<HASHLINESYMBOL ';
if ($this->Antialising) $tagStr.='antialiasing ="'.$this->Antialising.'" ';
if ($this->Colour) $tagStr.='color ="'.$this->Colour.'" ';
if ($this->Interval) $tagStr.='interval ="'.$this->Interval.'" ';
if ($this->Linethickness) $tagStr.='linethickness ="'.$this->Linethickness.'" ';
if ($this->Overlap) $tagStr.='overlap ="'.$this->Overlap.'" ';
if ($this->Tickthickness) $tagStr.='tickthickness ="'.$this->Tickthickness.'" ';
if ($this->Transparency) $tagStr.='transparency ="'.$this->Transparency.'" ';
if ($this->Type) $tagStr.='type ="'.$this->Type.'" ';
if ($this->Width) $tagStr.='width ="'.$this->Width.'" ';
return $tagStr.'</HASHLINESYMBOL>';
case 5:
$tagStr='<RASTERFILLSYMBOL ';
if ($this->Image) $tagStr.='image ="'.$this->Image.'" ';
if ($this->Url) $tagStr.='url ="'.$this->Url.'" ';
if ($this->Antialising) $tagStr.='antialiasing ="'.$this->Antialiasing.'" ';
if ($this->Overlap) $tagStr.='overlap ="'.$this->Overlap.'" ';
if ($this->Transparency) $tagStr.='transparency ="'.$this->Transparency.'" ';
return $tagStr.'</HASHLINESYMBOL>';
case 6:
$tagStr='<RASTERMARKERSYMBOL ';
if ($this->Image) $tagStr.='image ="'.$this->Image.'" ';
if ($this->Url) $tagStr.='url ="'.$this->Url.'" ';
if ($this->Antialising) $tagStr.='antialiasing ="'.$this->Antialiasing.'" ';
if ($this->Hotspot) $tagStr.='hotspot ="'.$this->Hotspot.'" ';
if ($this->Overlap) $tagStr.='overlap ="'.$this->Overlap.'" ';
if ($this->Shadow) $tagStr.='shadow ="'.$this->Shadow.'" ';
if ($this->Size) $tagStr.='size ="'.$this->Size.'" ';
if ($this->Transparency) $tagStr.='transparency ="'.$this->Transparency.'" ';
if ($this->Uscentroid) $tagStr.='usecentroid ="'.$this->Uscentroid.'" ';
return $tagStr.'</RASTERMARKERSYMBOL>';
case 7:
$tagStr='<RASTERSHIELDSYMBOL ';
if ($this->Image) $tagStr.='image ="'.$this->Image.'" ';
if ($this->Url) $tagStr.='url ="'.$this->Url.'" ';
if ($this->Antialising) $tagStr.='antialiasing ="'.$this->Antialiasing.'" ';
if ($this->Boundary) $tagStr.='boundary ="'.$this->Boundary.'" ';
if ($this->Font) $tagStr.='font ="'.$this->Font.'" ';
if ($this->Fontcolor) $tagStr.='fontcolor ="'.$this->Fontcolor.'" ';
if ($this->Fontsize) $tagStr.='fontsize ="'.$this->Fontsize.'" ';
if ($this->Fontstyle) $tagStr.='fontstyle ="'.$this->Fontstyle.'" ';
if ($this->Labelmode) $tagStr.='labelmode ="'.$this->Labelmode.'" ';
if ($this->Printmode) $tagStr.='printmode ="'.$this->Printmode.'" ';
if ($this->Shadow) $tagStr.='shadow ="'.$this->Shadow.'" ';
if ($this->Textposition) $tagStr.='textposition ="'.$this->Textposition.'" ';
if ($this->Transparency) $tagStr.='transparency ="'.$this->Transparency.'" ';
return $tagStr.'</RASTERSHIELDSYMBOL>';
case 8:
$tagStr='<SHIELDSYMBOL ';
if ($this->Type) $tagStr.='type ="'.$this->Type.'" ';
if ($this->Antialising) $tagStr.='antialiasing ="'.$this->Antialiasing.'" ';
if ($this->Font) $tagStr.='font ="'.$this->Font.'" ';
if ($this->Fontcolor) $tagStr.='fontcolor ="'.$this->Fontcolor.'" ';
if ($this->Fontsize) $tagStr.='fontsize ="'.$this->Fontsize.'" ';
if ($this->Fontstyle) $tagStr.='fontstyle ="'.$this->Fontstyle.'" ';
if ($this->Labelmode) $tagStr.='labelmode ="'.$this->Labelmode.'" ';
if ($this->Minsize) $tagStr.='minsize ="'.$this->Minsize.'" ';
if ($this->shadow) $tagStr.='shadow ="'.$this->shadow.'" ';
return $tagStr.'</SHIELDSYMBOL>';
case 9:
$tagStr='<SIMPLELINESYMBOL ';
if ($this->Antialising) $tagStr.='antialiasing ="'.$this->Antialiasing.'" ';
if ($this->Captype) $tagStr.='captype ="'.$this->Captype.'" ';
if ($this->Color) $tagStr.='color ="'.$this->Color.'" ';
if ($this->Jointype) $tagStr.='jointype ="'.$this->Jointype.'" ';
if ($this->Overlap) $tagStr.='overlap ="'.$this->Overlap.'" ';
if ($this->Transparency) $tagStr.='transparency ="'.$this->Transparency.'" ';
if ($this->Type) $tagStr.='type ="'.$this->Type.'" ';
if ($this->Width) $tagStr.='width ="'.$this->Width.'" ';
return $tagStr.' />';
case 10:
$tagStr='<SIMPLEMARKERSYMBOL ';
if ($this->Antialising) $tagStr.='antialiasing ="'.$this->Antialiasing.'" ';
if ($this->Color) $tagStr.='color ="'.$this->Color.'" ';
if ($this->Outline) $tagStr.='outline ="'.$this->Outline.'" ';
if ($this->Overlap) $tagStr.='overlap ="'.$this->Overlap.'" ';
if ($this->shadow) $tagStr.='shadow ="'.$this->shadow.'" ';
if ($this->Transparency) $tagStr.='transparency ="'.$this->Transparency.'" ';
if ($this->Type) $tagStr.='type ="'.$this->Type.'" ';
if ($this->Usecentroid) $tagStr.='usecentroid ="'.$this->Usecentroid.'" ';
if ($this->Width) $tagStr.='width ="'.$this->Width.'" ';
return $tagStr.'</SIMPLEMARKERSYMBOL>';
case 12:
$tagStr='<TEXTMARKERSYMBOL ';
if ($this->Angle) $tagStr.='angle ="'.$this->Angle.'" ';
if ($this->Antialiasing) $tagStr.='antialiasing ="'.$this->Antialiasing.'" ';
if ($this->Blockout) $tagStr.='blockout ="'.$this->Blockout.'" ';
if ($this->Font) $tagStr.='font ="'.$this->Font.'" ';
if ($this->Fontcolor) $tagStr.='fontcolor ="'.$this->Fontcolor.'" ';
if ($this->Fontsize) $tagStr.='fontsize ="'.$this->Fontsize.'" ';
if ($this->Fontstyle) $tagStr.='fontstyle ="'.$this->Fontstyle.'" ';
if ($this->Glowing) $tagStr.='glowing ="'.$this->Glowing.'" ';
if ($this->Halignment) $tagStr.='halignment ="'.$this->Halignment.'" ';
if ($this->Interval) $tagStr.='interval ="'.$this->Interval.'" ';
if ($this->Outline) $tagStr.='outline ="'.$this->Outline.'" ';
if ($this->Overlap) $tagStr.='overlap ="'.$this->Overlap.'" ';
if ($this->Printmode) $tagStr.='printmode ="'.$this->Printmode.'" ';
if ($this->Shadow) $tagStr.='shadow ="'.$this->Shadow.'" '; // undocumented attribute
if ($this->Transparency) $tagStr.='transparency ="'.$this->Transparency.'" ';
if ($this->Valignment) $tagStr.='valignment ="'.$this->Valignment.'" ';
return $tagStr.'/>';
case 14:
$tagStr='<TRUETYPEMARKERSYMBOL ';
if ($this->Character) $tagStr.='character ="'.$this->Character.'" ';
if ($this->Angle) $tagStr.='angle ="'.$this->Angle.'" ';
if ($this->Anglefield) $tagStr.='anglefield ="'.$this->Anglefield.'" ';
if ($this->Antialiasing) $tagStr.='antialiasing ="'.$this->Antialiasing.'" ';
if ($this->Font) $tagStr.='font ="'.$this->Font.'" ';
if ($this->Fontcolor) $tagStr.='fontcolor ="'.$this->Fontcolor.'" ';
if ($this->Fontsize) $tagStr.='fontsize ="'.$this->Fontsize.'" ';
if ($this->Fontstyle) $tagStr.='fontstyle ="'.$this->Fontstyle.'" ';
if ($this->Glowing) $tagStr.='glowing ="'.$this->Glowing.'" ';
if ($this->Outline) $tagStr.='outline ="'.$this->Outline.'" ';
if ($this->Overlap) $tagStr.='overlap ="'.$this->Overlap.'" ';
if ($this->Rotatemethod) $tagStr.='rotatemethod ="'.$this->Rotatemethod.'" ';
if ($this->Shadow) $tagStr.='shadow ="'.$this->Shadow.'" ';
if ($this->Transparency) $tagStr.='transparency ="'.$this->Transparency.'" ';
if ($this->Usecentroid) $tagStr.='usecentroid ="'.$this->Usecentroid.'" ';
return $tagStr.'</TRUETYPEMARKERSYMBOL>';
}
}
}
?>