This page was saved using jaction on 2006-09-04 8:34:03.
Address: http://flexdocs.kr/docs/flex2/langref/flash/display/Shape.html
Title: flash.display.Shape (Flex™ 2 레퍼런스 가이드)  •  Size: 52623
Packageflash.display
Classpublic class Shape
InheritanceShape Inheritance DisplayObject Inheritance EventDispatcher Inheritance Object
SubclassesFlexShape

Shape 클래스는, ActionScript 묘화 응용 프로그램 인터페이스 (API)를 사용해 단순한 셰이프를 작성할 경우에 사용됩니다. Shape 클래스에는, Graphics 클래스로부터 Methods에 액세스 할 수 있는 graphics property가 있습니다.

Sprite 클래스에도 graphics property가 있어, 이것에는 Shape 클래스에서는 사용할 수 없는 다른 기능이 있습니다. 예를 들어, Sprite object는 표시 object 컨테이너인데 대해, Shape object는 그렇지는 않습니다 (아이 표시 object도 가질 수 없습니다). 따라서, 같은 그래픽이 포함되어 있어도, 사용되는 메모리량은 Shape object가 Sprite object보다 적게 됩니다.

View the examples

See also

flash.display.Graphics
표시 아키텍쳐에 대해


Public property
 property정의
 InheritedaccessibilityProperties : AccessibilityProperties
이 표시 object의 현재의 accessibility options입니다.
DisplayObject
 Inheritedalpha : Number
지정된 object의 알파 투명도 값을 나타냅니다.
DisplayObject
 InheritedblendMode : String
사용하는 브렌드 모드를 지정하는 BlendMode 클래스의 값입니다.
DisplayObject
 InheritedcacheAsBitmap : Boolean
true 로 설정되어 있는 경우, 표시 object의 내부 비트 맵 표현이 Flash Player 에 캐쉬됩니다.
DisplayObject
 Inheritedconstructor : Object
특정의 object 인스턴스의 클래스 object 또는 constructor    함수에의 참조입니다.
Object
 Inheritedfilters : Array
표시 object에 현재 관련지을 수 있고 있는 각 필터 object가 포함되고 있는 인덱스 첨부의 배열입니다.
DisplayObject
  graphics : Graphics
[read-only] 벡터의 묘화 커멘드가 발생하는, 이 Shape object에 속하는 Graphics object를 지정합니다.
Shape
 Inheritedheight : Number
표시 object의 높이를 나타냅니다 (픽셀 단위).
DisplayObject
 InheritedloaderInfo : LoaderInfo
이 표시 object가 속하는 파일의 로드 정보를 포함한 LoaderInfo object를 돌려줍니다.
DisplayObject
 Inheritedmask : DisplayObject
호출원 display object는, 지정된 mask object에 의해 마스크 됩니다.
DisplayObject
 InheritedmouseX : Number
마우스 위치의 x 좌표를 나타냅니다 (픽셀 단위).
DisplayObject
 InheritedmouseY : Number
마우스 위치의 y 좌표를 나타냅니다 (픽셀 단위).
DisplayObject
 Inheritedname : String
DisplayObject 의 인스턴스명을 나타냅니다.
DisplayObject
 InheritedopaqueBackground : Object
표시 object가 특정의 배경색으로 불투명한지 어떤지를 지정합니다.
DisplayObject
 Inheritedparent : DisplayObjectContainer
이 표시 object를 포함한 DisplayObjectContainer object를 나타냅니다.
DisplayObject
 Inheritedprototype : Object
[static] 클래스 또는 함수 object의 prototype object에의 참조입니다.
Object
 Inheritedroot : DisplayObject
로드 된 SWF 파일내 display object의 경우,root property는 그 SWF 파일이 나타내는 표시 리스트의 트리 구조 부분의 맨 위에 있는 표시 object가 됩니다.
DisplayObject
 Inheritedrotation : Number
DisplayObject 인스턴스의 원래의 위치로부터의 회전각을 번단위로 가리킵니다.
DisplayObject
 Inheritedscale9Grid : Rectangle
현재 유효한 확대 / 축소 격자입니다.
DisplayObject
 InheritedscaleX : Number
기준점으로부터 적용되는 object의 수평 스케일 (percentage)을 나타냅니다.
DisplayObject
 InheritedscaleY : Number
object의 기준점으로부터 적용되는 object의 수직 스케일 (percentage)을 나타냅니다.
DisplayObject
 InheritedscrollRect : Rectangle
표시 object의 스크롤 구형의 경계.
DisplayObject
 Inheritedstage : Stage
표시 object의 스테이지.
DisplayObject
 Inheritedtransform : Transform
표시 object의 매트릭스, 칼라 변환, 픽셀 경계에 관계하는 property를 가지는 object입니다.
DisplayObject
 Inheritedvisible : Boolean
표시 object가 가시인가 어떤가를 나타냅니다.
DisplayObject
 Inheritedwidth : Number
표시 object의 폭을 나타냅니다 (픽셀 단위).
DisplayObject
 Inheritedx : Number
친 DisplayObjectContainer 의 로컬 좌표를 기준으로 한 DisplayObject 인스턴스의 x 좌표를 나타냅니다.
DisplayObject
 Inheritedy : Number
친 DisplayObjectContainer 의 로컬 좌표를 기준으로 한 DisplayObject 인스턴스의 y 좌표를 나타냅니다.
DisplayObject
Public Methods
 Methods정의
  Shape ()
새로운 Shape object를 작성합니다.
Shape
 InheritedaddEventListener (type:String , listener:Function , useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
event listener objects를 EventDispatcher object에 등록해, listener가 이벤트의 통지를 받도록(듯이) 합니다.
EventDispatcher
 InheriteddispatchEvent (event:Event ):Boolean
이벤트를 event 플로우(flow)에 dispatch합니다.
EventDispatcher
 InheritedgetBounds (targetCoordinateSpace:DisplayObject ):Rectangle
targetCoordinateSpace object의 좌표계를 기준으로 해, 표시 object의 area를 정의하는 구형을 돌려줍니다.
DisplayObject
 InheritedgetRect (targetCoordinateSpace:DisplayObject ):Rectangle
셰이프상의 선을 제외해,targetCoordinateSpace Parameters에 의해 정의된 좌표계에 근거해, 표시 object의 경계를 정의하는 구형을 돌려줍니다.
DisplayObject
 InheritedglobalToLocal (point:Point ):Point
point object를 스테이지 (글로벌) 좌표로부터 표시 object의 (로컬) 좌표로 변환합니다.
DisplayObject
 InheritedhasEventListener (type:String ):Boolean
EventDispatcher object에, 특정의 event 타입에 대해서 등록된 listener가 있을지 어떨지를 확인합니다.
EventDispatcher
 InheritedhasOwnProperty (name:String ):Boolean
object로 지정된 property가 정의되고 있는지 어떤지를 나타냅니다.
Object
 InheritedhitTestObject (obj:DisplayObject ):Boolean
표시 object를 평가해,obj 표시 object와 중복 또는 교차할지 어떨지를 조사합니다.
DisplayObject
 InheritedhitTestPoint (x:Number , y:Number , shapeFlag:Boolean = false):Boolean
표시 object를 평가해,xy Parameters로 지정된 포인트와 중복 또는 교차할지 어떨지를 조사합니다.
DisplayObject
 InheritedisPrototypeOf (theClass:Object ):Boolean
Object 클래스의 인스턴스가, Parameters로서 지정된 object의 prototype 체인내에 있을지 어떨지를 나타냅니다.
Object
 InheritedlocalToGlobal (point:Point ):Point
point object를 표시 object의 (로컬) 좌표로부터 스테이지 (글로벌) 좌표로 변환합니다.
DisplayObject
 InheritedpropertyIsEnumerable (name:String ):Boolean
지정된 property가 존재해, 열거 가능한가 어떤가를 나타냅니다.
Object
 InheritedremoveEventListener (type:String , listener:Function , useCapture:Boolean = false):void
EventDispatcher object로부터 listener를 삭제합니다.
EventDispatcher
 InheritedsetPropertyIsEnumerable (name:String , isEnum:Boolean = true):void
루프 처리에 대한 다이나믹 property의 가용성을 설정합니다.
Object
 InheritedtoString ():String
지정된 object의 string 표현을 돌려줍니다.
Object
 InheritedvalueOf ():Object
지정된 object의 원시적치를 돌려줍니다.
Object
 InheritedwillTrigger (type:String ):Boolean
지정된 event 타입에 대해, 이 EventDispatcher object 또는 그 조상에게 event listener가 등록되어 있는지 어떤지를 확인합니다.
EventDispatcher
이벤트
 이벤트일람정의
 Inheritedactivate Flash Player 가 operating system의 포커스를 취득해, 액티브하게 되었을 때에 dispatch됩니다. DisplayObject
 Inheritedadded 표시 object가 표시 리스트에 추가되었을 때에 dispatch됩니다. DisplayObject
 Inheriteddeactivate Flash Player 가 operating system의 포커스를 잃어, 비액티브하게 되었을 때에 dispatch됩니다. DisplayObject
 InheritedenterFrame 재생 헤드가 새로운 프레임에 들어갈 때 dispatch됩니다. DisplayObject
 Inheritedremoved 표시 object가 표시 리스트로부터 삭제 되려고 하고 있을 때 dispatch됩니다. DisplayObject
 Inheritedrender 표시 리스트가 갱신 및 렌더링 되려고 하고 있을 때 dispatch됩니다. DisplayObject
property의 상세
graphicsproperty
graphics:Graphics   [read-only]

벡터의 묘화 커멘드가 발생하는, 이 Shape object에 속하는 Graphics object를 지정합니다.

Implements
    public function get graphics():Graphics

See also

constructor    의 상세
Shape()constructor   
public 함수 Shape()

새로운 Shape object를 작성합니다.

Examples

다음의 예에서는,ShapeExample 클래스를 사용해, 엔, 각환구형, 및 사각형을 묘화 합니다. 이것을 실시하려면 , 이하의 순서를 실행합니다.
  1. 다음에 각 셰이프의 크기를 결정할 때에 사용하는 size property를 선언합니다.
  2. 배경색을 오렌지색, 경계선색을 진한 회색, 경계선의 크기를 0 픽셀, 각이 둥근 반경을 9 픽셀, 스테이지의 구석과 다른 object의 사이의 스페이스를 5 픽셀에, 각각 설정하는 property를 선언합니다.
  3. 상기의 순서로 선언한 property를 Graphics 클래스의 빌트인 Methods와 함께 사용해, 엔, 각환구형, 및 사각형을, 좌표 x = 0, y = 0 에 묘화 합니다.
  4. 스테이지의 맨 위에 배치된 각 셰이프를, x = 5, y = 5 로부터, refreshLayout() 를 사용해 셰이프간의 스페이스를 5 픽셀로 해 재묘화 합니다.

package {
    import flash.display.DisplayObject;
    import flash.display.Graphics;
    import flash.display.JointStyle;
    import flash.display.LineScaleMode;
    import flash.display.Shape;
    import flash.display.Sprite;

    public class ShapeExample extends Sprite {
        private var size:uint           = 80;
        private var bgColor:uint       = 0xFFCC00;
        private var borderColor:uint  = 0x666666;
        private var borderSize:uint   = 0;
        private var cornerRadius:uint = 9;
        private var gutter:uint       = 5;

        public function ShapeExample() {
            doDrawCircle();
            doDrawRoundRect();
            doDrawRect();
            refreshLayout();
        }

        private function refreshLayout() :void {
            var ln:uint = numChildren;
            var child:DisplayObject;
            var lastChild:DisplayObject = getChildAt(0);
            lastChild.x = gutter;
            lastChild.y = gutter;
            for (var i:uint = 1; i < ln; i++) {
                child = getChildAt(i);
                child.x = gutter + lastChild.x + lastChild.width;
                child.y = gutter;
                lastChild = child;
            }
        }

        private function doDrawCircle() :void {
            var child:Shape = new Shape();
            var halfSize:uint = Math.round(size/2);
            child.graphics.beginFill(bgColor);
            child.graphics.lineStyle(borderSize, borderColor);
            child.graphics.drawCircle(halfSize, halfSize, halfSize);
            child.graphics.endFill();
            addChild(child);
        }

        private function doDrawRoundRect() :void {
            var child:Shape = new Shape();
            child.graphics.beginFill(bgColor);
            child.graphics.lineStyle(borderSize, borderColor);
            child.graphics.drawRoundRect(0, 0, size, size, cornerRadius);
            child.graphics.endFill();
            addChild(child);
        }

        private function doDrawRect() :void {
            var child:Shape = new Shape();
            child.graphics.beginFill(bgColor);
            child.graphics.lineStyle(borderSize, borderColor);
            child.graphics.drawRect(0, 0, size, size);
            child.graphics.endFill();
            addChild(child);
        }
    }
}






 

코멘트가 추가되었을 경우, 메일로 받기. | 코멘트 리포트

현재의 페이지: http://flexdocs.kr/docs/flex2/langref/flash/display/Shape.html