summaryrefslogblamecommitdiffstats
path: root/src/main/java/com/kitfox/salamander/svg/paint/SVGMarkerElement.java
blob: 476147ba88298628502497d4c913014699f594ee (plain) (tree)







































































                                                                                                                                                                                      
                                                           










                                                                                                                         
                                                           














                                                                                                                                                                                          
/*
 * SVGMarkerElement.java
 *
 * Created on April 13, 2007, 9:59 AM
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package com.kitfox.salamander.svg.paint;

import com.kitfox.salamander.svg.basic.SVGAngle;
import com.kitfox.salamander.svg.basic.SVGAnimatedAngle;
import com.kitfox.salamander.svg.basic.SVGAnimatedEnumeration;
import com.kitfox.salamander.svg.basic.SVGAnimatedLength;
import com.kitfox.salamander.svg.basic.SVGElement;
import com.kitfox.salamander.svg.basic.SVGExternalResourcesRequired;
import com.kitfox.salamander.svg.basic.SVGFitToViewBox;
import com.kitfox.salamander.svg.basic.SVGLangSpace;
import com.kitfox.salamander.svg.basic.SVGStylable;

/**
 * 
 * The SVGMarkerElement  interface corresponds to the 'marker' element.
 * @author kitfox
 */
public interface SVGMarkerElement extends SVGElement,
        SVGLangSpace,
        SVGExternalResourcesRequired,
        SVGStylable,
        SVGFitToViewBox
{
    public static enum Units
    {
        /**
         * The marker unit type is not one of predefined types. It is invalid to attempt to define a new value of this type or to attempt to switch an existing value to this type.
         */
        UNKNOWN, 
        /**
         * The value of attribute markerUnits is 'userSpaceOnUse'.
         */
        USER_SPACE_ON_USE, 
        /**
         * The value of attribute markerUnits is 'strokeWidth'.
         */
        STROKE_WIDTH};
    public static enum Orient
    {
        /**
         * The marker orientation is not one of predefined types. It is invalid to attempt to define a new value of this type or to attempt to switch an existing value to this type.
         */
        UNKNOWN, 
        /**
         * Attribute orient has value 'auto'.
         */
        AUTO, 
        /**
         * Attribute orient has an angle value.
         */
        ANGLE};
    
    /**
     * Corresponds to attribute refX on the given 'marker' element.
     */
    public SVGAnimatedLength getRefX();
    /**
     * Corresponds to attribute refY on the given 'marker' element.
     */
    public SVGAnimatedLength getRefY();
    /**
     * Corresponds to attribute markerUnits on the given 'marker' element. One of the Marker Units Types defined above.
     */
    public SVGAnimatedEnumeration<Units> getMarkerUnits();
    /**
     * Corresponds to attribute markerWidth on the given 'marker' element.
     */
    public SVGAnimatedLength getMarkerWidth();
    /**
     * Corresponds to attribute markerHeight on the given 'marker' element.
     */
    public SVGAnimatedLength getMarkerHeight();
    /**
     * Corresponds to attribute orient on the given 'marker' element. One of the Marker Orientation Types defined above.
     */
    public SVGAnimatedEnumeration<Orient> getOrientType();
    /**
     * Corresponds to attribute orient on the given 'marker' element. If markerUnits is SVG_MARKER_ORIENT_ANGLE, the angle value for attribute orient; otherwise, it will be set to zero.
     */
    public SVGAnimatedAngle getOrientAngle();
    /**
     * Sets the value of attribute orient to 'auto'.
     */
    public void setOrientToAuto();
    /**
     * Sets the value of attribute orient to the given angle.
     * @param angle The angle value to use for attribute orient.
     */
    public void setOrientToAngle(SVGAngle angle);
    
}