- D3.js - SVG Transformation
- SVG Transformation 개요
- SVG 또는 D3를 이용하여 사각형을 그리고 변환(Translate)하기
- D3를 이용하여 SVG Circle을 그리고 변환(Translate)하기
- D3 - Transform과 Scale
- D3 - Transform과 Skew(SkewX and SkewY)
- 여러개의 svg 요소를 Grouping 하여 Transform 하기
- Selection - Append - Modifying Elements 관련 페이지 보기
- SVG Transformation 개요
- Translate: 도형의 위치를 변환한다. x 축을 따른 변환(tx)과 y 축을 따른 변환(ty) 2개의 옵션을 필요로 한다.
- Rotate: 회전 중심점을 중신으로 도형을 변환(회전)한다. 회전 각도, x 및 y 축의 회전 중심을 나타내는 cx 와 cy 세 가지 옵션을 필요로 한다. cx와 cy가 주어지지 않은 경우 좌표계의 현재 원점을 회전 중심으로 사용한다.
- Scale: 도형의 크기(Scale)를 변환한다. x 축의 배율 인수(sx)와 y 축의 배율 인수(sy) 2개의 옵션을 필요로 한다. sy는 선택 사항이며 지정되지 않은 경우 sx 값을 사용한다.
- SkewX 와 SkewY: x 또는 y 축을 따라 주어진 각도 만큼 기울어지게(skew) 한다. SkewX는 x 축을 따르는 기울기 각도, SkewY는 y 축을 따르는 기울기 각도를 나타낸다.
- SVG 또는 D3를 이용하여 사각형을 그리고 변환(Translate)하기
- SVG 사각형을 그리고 변환(Translate)하는 예
- SVG 사각형을 그리고 변환(Translate)하는 프로그램 예
- D3를 이용하여 SVG 사각형을 그리고 변환(Translate)하기
- rect Translate 프로그램 실행 예
- D3를 이용한 rect Translate 프로그램 예
- D3를 이용하여 SVG Circle을 그리고 변환(Translate)하기
- circle Translate 프로그램 실행 예
- circle Translate 프로그램 예
- D3 - Transform과 Scale
- rect scale 프로그램 실행 예
- rect scale 프로그램 예
- D3 - Transform과 Skew(SkewX and SkewY)
- 직사각형을 X 또는 Y 방향으로 Skew하는 프로그램 실행 예
- 직사각형을 skewX 하는 프로그램 예
- 여러개의 svg 요소를 Grouping 하여 Transform 하기
- Group Translate 프로그램 실행 예
- Grouping과 Transformation 프로그램 예
SVG는 하나의 요소 또는 요소의 그룹을 변환하는 옵션을 제공한다. SVG는 Translate, Scale, Rotate, Skew를 지원한다.
x 축과 y 축으로 (tx, ty) 만큼 변환한 위치에 사각형을 그린다.
x 축과 y 축으로 (tx, ty) 만큼 변환한 위치에 사각형을 그린다.
Fig. Rectr 1은 Transformation 이전의 위치이고, Fig. Rectr 2은 Transformation를 실행한 다음의 위치이다.
주: 윗 두 예(SVG 사각형 변환과 D3를 이용한 사각형 변환)를 비교하면 SVG code를 직접 사용하는 것이 더 효과적으로 생각될 수 있다. 그러나 단순한 SVG 요소의 생성은 SVG code를 직접 시용하는 것이 효과적 이지만 동적인 SVG 요소의 생성이 필요한 경우에는 D3를 이용하는 것이 효과적(Data Binding 등 사용)이다.
x 축과 y 축으로 (tx, ty) 만큼 변환한 위치에 Circle을 그린다.
Fig. Circle 1은 Transformation 이전의 위치이고, Fig. Circle 2은 Transformation를 실행한 다음의 위치이다.
x 축 배율 인수(sx)와 y 축 배율 인수(sx) 비율로 Scaling 한다. sy는 선택 사항이며 지정되지 않은 경우 sx 값을 사용한다.
Fig. Rect 1은 Scaling 이전의 크기이고, Fig. Rect 2은 Scaling을 실행한 다음의 크기이다.
SkewX는 x 축으로 주어진 각도 만큼 기울어지게(skew) 그리고, SkewY는 y 축으로 주어진 각도 만큼 기울어지게(skew) 한다.
Fig. skewX는 직사각형을 x 방향으로 20도 skew한 예이고, skewY는 직사각형을 y 방향으로 20도 skew한 예이다.
이 예는 직사각형과 원을 Grouping 하고 translate와 rotate를 하는 예이다. 직사각형과 원이 Grouping 되어 하나의 요소 같이 변환된다.
Fig. Group 1은 Transformation 이전의 위치이고, Fig. Group 2은 Transformation를 실행한 다음의 위치이다.