亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? shape.java

?? java版本的flash文件(swf)播放器
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
/****************************************************************
 * Copyright (c) 2001, David N. Main, All rights reserved.
 * 
 * Redistribution and use in source and binary forms, with or
 * without modification, are permitted provided that the 
 * following conditions are met:
 *
 * 1. Redistributions of source code must retain the above 
 * copyright notice, this list of conditions and the following 
 * disclaimer. 
 * 
 * 2. Redistributions in binary form must reproduce the above 
 * copyright notice, this list of conditions and the following 
 * disclaimer in the documentation and/or other materials 
 * provided with the distribution.
 * 
 * 3. The name of the author may not be used to endorse or 
 * promote products derived from this software without specific 
 * prior written permission. 
 * 
 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY 
 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 
 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A 
 * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE 
 * AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 
 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 
 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 
 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 
 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 
 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 
 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 ****************************************************************/
package com.anotherbigidea.flash.movie;

import java.io.*;
import java.util.*;
import com.anotherbigidea.flash.interfaces.*;
import com.anotherbigidea.flash.writers.*;
import com.anotherbigidea.flash.readers.*;
import com.anotherbigidea.flash.structs.*;
import com.anotherbigidea.flash.SWFConstants;

/**
 * A Shape Symbol
 */
public class Shape extends Symbol
{
    public abstract static class Element {}
    
    public abstract static class Style extends Shape.Element 
    {
    }
    
    public abstract static class FillStyle extends Shape.Style
    {
    }
    
    public static class ColorFill extends Shape.FillStyle
    {
        protected Color color;
        
        /**
         * @return may be Color or AlphaColor
         */
        public Color getColor() { return color; }
        public void setColor( Color color ) { this.color = color; }
        
        public ColorFill( Color color )
        {
            this.color = color;
        }
    }
    
    public static class ImageFill extends Shape.FillStyle
    {
        protected Symbol image;
        protected Transform matrix;
        protected boolean clipped;
        
        public Symbol getImage()        { return image; }
        public Transform getTransform() { return matrix; }
        public boolean isClipped()      { return clipped; }
        
        public void setImage( Symbol image ) { this.image = image; }
        public void setTransform( Transform matrix ) { this.matrix = matrix; }
        public void setClipped( boolean isClipped ) { clipped = isClipped; }
        
        public ImageFill( Symbol image, Transform matrix, boolean isClipped )
        {
            this.image   = image;
            this.matrix  = matrix;
            this.clipped = isClipped;
        }
    }
    
    public static class GradientFill extends Shape.FillStyle
    {
        protected Color[] colors;
        protected int[]   ratios;
        protected Transform matrix;
        protected boolean radial;
        
        public Color[]   getColors()    { return colors; }
        public Transform getTransform() { return matrix; }
        public int[]     getRatios()    { return ratios; }
        public boolean   isRadial()     { return radial; }
        
        public void setColors( Color[] colors ) { this.colors = colors; }
        public void setRatios( int[] ratios ) { this.ratios = ratios; }
        public void setTransform( Transform matrix ) { this.matrix = matrix; }
        public void setRadial( boolean isRadial ) { this.radial = isRadial; }
        
        public GradientFill( Color[] colors, int[] ratios, 
                             Transform matrix, boolean isRadial )
        {
            this.colors = colors;
            this.matrix = matrix;
            this.radial = isRadial;
            this.ratios = ratios;
        }
    }
    
    public static class LineStyle extends Shape.Style
    {
        protected double width;
        protected Color  color;
        
        public double getWidth() { return width; }
        public Color  getColor() { return color; }
        
        public void setWidth( double width ) { this.width = width; }
        public void setColor( Color color ) { this.color = color; }
        
        public LineStyle( double width, Color color )
        {
            this.width = width;
            this.color = color;
        }
    }
    
    public abstract static class SetStyle extends Shape.Element 
    {
        protected int index;
        
        public int getStyleIndex() { return index; }
        public void setStyleIndex( int index ) { this.index = index; }
        
        protected SetStyle( int index )
        {
            this.index = index;
        }
    }
    
    public abstract static class SetFillStyle extends Shape.SetStyle 
    {
        protected SetFillStyle( int index )
        {
            super( index );
        }
    }
    
    public static class SetLeftFillStyle extends Shape.SetFillStyle 
    {
        public SetLeftFillStyle( int index )
        {
            super( index );
        }
    }
    
    public static class SetRightFillStyle extends Shape.SetFillStyle 
    {
        public SetRightFillStyle( int index )
        {
            super( index );
        }
    }
    
    public static class SetLineStyle extends Shape.SetStyle 
    {
        public SetLineStyle( int index )
        {
            super( index );
        }
    }
    
    public abstract static class Vector extends Shape.Element 
    {
        protected double x, y;
        
        public double getX() { return x; }
        public double getY() { return y; }
        
        public void setX( double x ) { this.x = x; }
        public void setY( double y ) { this.y = y; }
        
        protected Vector( double x, double y )
        {
            this.x = x;
            this.y = y;
        }
    }
    
    public static class Move extends Shape.Vector 
    {
        public Move( double x, double y )
        {
            super( x, y );
        }
    }
    
    public static class Line extends Shape.Vector 
    {
        public Line( double x, double y )
        {
            super( x, y );
        }
    }

    public static class Curve extends Shape.Vector 
    {
        protected double cx, cy;
        
        public double getControlX() { return cx; }
        public double getControlY() { return cy; }
        
        public void setControlX( double cx ) { this.cx = cx; }
        public void setControlY( double cy ) { this.cy = cy; }
        
        public Curve( double x, double y, double controlX, double controlY )
        {
            super( x, y );
            this.cx = controlX;
            this.cy = controlY;
        }        
    }

    protected ArrayList elements = new ArrayList();
    protected double minX, maxX, minY, maxY;  //bounding rectangle
    protected boolean hasAlpha = false;
    protected double maxLineWidth;
    protected double currx, curry;
    
    public Shape() {}
    
    /**
     * Get the bounding rectangle as a double[4] - (min-X,min-Y,max-X,max-Y)
     */
    public double[] getBoundingRectangle()
    {
        return new double[] { minX, minY, maxX, maxY };
    }
    
    /**
     * Set the bounding rectangle. This will be automatically calculated
     * as the geometry vectors are defined and this rectangle will be enlarged
     * if it does not contain all the vectors.
     */
    public void setBoundingRectangle( double minx, double minY, 
                                      double maxX, double maxY )
    {
        this.minX = minX;
        this.minY = minY;
        this.maxX = maxX;
        this.maxY = maxY;
    }
    
    /**
     * Access the list of shape elements
     * Each object is a subclass of Shape.Element
     */
    public ArrayList getShapeElements()
    {
        return elements;
    }
    
    /**
     * Define a line style
     * @param color if null then black is assumed
     */
    public void defineLineStyle( double width, Color color )
    {
        if( color == null ) color = new Color(0,0,0);
        
        LineStyle style = new LineStyle( width, color );

        if( maxLineWidth < width ) maxLineWidth = width;

        if( color instanceof AlphaColor ) hasAlpha = true;
        
        elements.add( style );
    }
    
    /**
     * Define a color fill
     * @param color if null then white is assumed
     */
    public void defineFillStyle( Color color )
    {

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线观看91精品国产麻豆| 欧美在线观看禁18| 亚洲欧洲99久久| www一区二区| 日韩一区二区三区在线| 91麻豆精品国产91久久久久| 欧美视频三区在线播放| 欧美主播一区二区三区| 色狠狠一区二区| 欧美日韩中文字幕一区| 欧美剧情电影在线观看完整版免费励志电影| 99精品在线观看视频| av一区二区三区在线| 国产成人综合视频| 国产一区二区在线视频| 国产一区福利在线| 成人免费av资源| 色吊一区二区三区| 欧美日韩三级一区二区| 日韩免费高清av| 久久精品亚洲国产奇米99| 国产精品卡一卡二卡三| 国产精品不卡在线观看| 亚洲狠狠爱一区二区三区| 午夜精品免费在线观看| 狠狠狠色丁香婷婷综合激情| 成人免费视频播放| 精品视频在线免费观看| www成人在线观看| 国产精品二三区| 天堂va蜜桃一区二区三区| 蜜桃在线一区二区三区| 秋霞av亚洲一区二区三| 国产传媒欧美日韩成人| 欧美少妇性性性| wwww国产精品欧美| 亚洲综合av网| 国内精品久久久久影院薰衣草| 99re热视频精品| 日韩欧美一区电影| 一区二区中文视频| 久久成人久久爱| 色噜噜久久综合| 久久久久久亚洲综合影院红桃| 亚洲男同性视频| 加勒比av一区二区| 精品视频一区二区不卡| 中文字幕欧美国产| 开心九九激情九九欧美日韩精美视频电影 | 色狠狠色噜噜噜综合网| 日韩精品影音先锋| 亚洲午夜成aⅴ人片| 国产成人超碰人人澡人人澡| 91超碰这里只有精品国产| 中文字幕二三区不卡| 久久成人免费网| 欧洲激情一区二区| 久久看人人爽人人| 欧美aaaaaa午夜精品| 色偷偷久久一区二区三区| 精品国偷自产国产一区| 天天综合天天做天天综合| 成人国产免费视频| 国产日韩欧美不卡在线| 亚洲一二三专区| 9久草视频在线视频精品| 精品福利一二区| 免费在线观看精品| 欧美疯狂做受xxxx富婆| 亚洲妇熟xx妇色黄| 在线观看一区不卡| 一区二区三区电影在线播| av成人老司机| 国产精品第一页第二页第三页| 国产黄色91视频| 久久精品在线免费观看| 国产一区视频导航| 久久久噜噜噜久噜久久综合| 久久国产精品99久久久久久老狼| 日韩一区二区视频| 激情五月婷婷综合| 日韩美一区二区三区| 天堂久久久久va久久久久| 精品视频在线视频| 亚洲第四色夜色| 欧美色男人天堂| 亚洲欧洲日韩一区二区三区| 成人成人成人在线视频| 国产精品二三区| 91免费版在线看| 亚洲一区电影777| 在线一区二区视频| 国产精品看片你懂得 | 久久精品亚洲国产奇米99| 国产一区二区精品久久99| 精品国产一区二区三区久久久蜜月| 久久精品72免费观看| 欧美刺激午夜性久久久久久久| 九九久久精品视频| 国产精品视频九色porn| 99精品黄色片免费大全| 午夜成人在线视频| 26uuu亚洲综合色| 成人av午夜电影| 亚洲综合激情小说| 精品福利一区二区三区| 99久久免费国产| 日韩影视精彩在线| 国产视频一区在线播放| 欧美亚洲一区二区在线观看| 久久疯狂做爰流白浆xx| 国产精品三级在线观看| 欧美日韩卡一卡二| 国内国产精品久久| 亚洲精品高清在线| 精品久久一区二区三区| av不卡在线播放| 亚洲国产成人91porn| 久久这里都是精品| 日本韩国精品在线| 国产一区二区调教| 综合久久久久久久| 欧美videos大乳护士334| 95精品视频在线| 久久99精品国产.久久久久| 中文字幕视频一区| 精品福利视频一区二区三区| 91美女视频网站| 国产精品888| 日韩国产欧美三级| 中文字幕制服丝袜成人av| 日韩一区二区在线观看视频播放| 成人aa视频在线观看| 久久精品国产亚洲高清剧情介绍 | 一区二区三区不卡视频在线观看 | 国产福利一区二区三区视频在线| 亚洲午夜在线电影| 欧美国产1区2区| 精品成人佐山爱一区二区| av中文字幕一区| 国产主播一区二区三区| 中文字幕日本不卡| 日韩欧美国产不卡| 欧美精品色综合| 欧洲一区二区三区在线| 成人少妇影院yyyy| 国产精品1024| 国产精品资源网站| 全部av―极品视觉盛宴亚洲| 亚洲国产一区二区a毛片| 亚洲欧美日韩国产中文在线| 国产夜色精品一区二区av| 欧美一区二区三区成人| 欧美日韩国产三级| 欧美视频日韩视频| 欧美日韩亚洲综合一区二区三区| 91丨九色丨尤物| 91女人视频在线观看| 成人av小说网| 91理论电影在线观看| av高清不卡在线| 99国产精品久久久久久久久久 | 麻豆91在线看| 日韩精品欧美成人高清一区二区| 偷拍一区二区三区四区| 日韩av二区在线播放| 日韩二区三区四区| 日韩国产欧美三级| 久久9热精品视频| 久久99久久99精品免视看婷婷| 韩国视频一区二区| 国产成人福利片| 色香蕉久久蜜桃| 欧美三级一区二区| 91精品国产综合久久久久久漫画| 日韩欧美中文一区二区| 久久先锋资源网| 国产精品久久久久影视| 亚洲在线中文字幕| 青青草一区二区三区| 国产精品一区在线| 一本色道久久综合狠狠躁的推荐| 欧美又粗又大又爽| 日韩一区二区精品| 国产午夜精品美女毛片视频| 国产精品久久久久久亚洲毛片| 亚洲精品福利视频网站| 麻豆国产一区二区| 9色porny自拍视频一区二区| 欧美精品色一区二区三区| 久久久精品蜜桃| 亚洲香肠在线观看| 国产精品91一区二区| 欧美日韩精品一区二区三区四区 | 午夜精品视频在线观看| 国产美女视频一区| 日本精品免费观看高清观看| 精品国产免费视频| 亚洲一区二区三区四区中文字幕| 久久99热这里只有精品|