CSS Graphics Geometry
Guide
Reference
GitHub
Guide
Reference
GitHub
  • Part 0. Math foundations

    • 좌표계와 CSS pixel
    • 점, 벡터, 거리와 기본 용어
    • 각도, 라디안, atan2
  • Part 1. Transform linear algebra

    • translate, scale, rotate
    • CSS matrix(a,b,c,d,e,f)
    • 변환 순서와 transform-origin
    • local, world, screen 좌표계
    • inverse matrix와 포인터 입력
    • 좌표와 transform 디버깅
  • Part 2. Infinite canvas math and architecture

    • viewport와 camera 모델
    • cursor anchored zoom
    • ruler와 tick 계산
    • 주기 함수와 grid step
    • content, overlay, controls layer
    • scene graph와 nested transform
  • Part 3. Editor tool math

    • Pointer Events와 드래그
    • DOMRect와 getBoundingClientRect
    • hit testing과 bounding box
    • selection rectangle과 marquee
    • selection bounds와 handles
    • resize와 rotation handle
    • snapping과 smart guides
    • group, frame, clipping
  • Part 4. CSS graphics properties as math

    • CSS box로 도형 만들기
    • clip-path, radius, shadow
    • 선형보간과 linear-gradient
    • 거리 함수와 radial/conic-gradient
    • stacking context와 합성
    • layout, paint, composite
  • Part 5. Editor state and persistence

    • 레이어 모델과 z-index
    • 이동, 복제, 삭제, 잠금
    • undo/redo command model
    • JSON export/import
  • Part 6. SVG overlay and vector editing

    • SVG viewBox와 좌표계
    • getScreenCTM과 inverse
    • SVG pointer-events와 stroke hit testing
    • cubic bezier path editing
    • mask, clipPath, marker
  • Part 7. Figma to CSS translation

    • Figma node와 CSS DOM 모델
    • Frame constraints와 Auto Layout
    • Fills, strokes, effects를 CSS로
    • Vector와 text 변환
    • gradient 밖의 CSS 수학
    • Figma gradient를 CSS gradient로 변환하기
    • 수학이 필요한 Figma to CSS 속성들
    • Figma VectorNetwork 정리
  • Appendix A. Canvas renderer transition

    • Canvas로 넘어가는 기준
  • Appendix B. Motion and timing

    • 모션 수학과 timing 함수
    • Keyframe timeline 엔진
    • Motion path 수학
    • Bezier curve 길이 구하기

강의 구성

각 레슨은 Markdown 문서와 독립 실행 데모로 구성됩니다. infinitecanvas.cc가 렌더러, 카메라, 그리드, 이벤트, 히스토리, 선택 도구를 작은 레슨으로 쪼개 설명하듯이, 이 강의는 같은 편집기 문제를 CSS/DOM/SVG 중심으로 다시 구성합니다.

문서는 단순한 CSS 패턴 모음이 아니라 수학 모델을 먼저 잡고, 그 모델이 CSS/DOM/SVG/Canvas 구현으로 내려가는 흐름으로 설명합니다. 데모에서는 실제 CSS transform 값과 편집기 상태가 어떻게 바뀌는지 확인합니다.

Part 0. Math foundations

  • 001. 좌표계와 CSS pixel
  • 002. 점, 벡터, 거리와 기본 용어
  • 003. 각도, 라디안, atan2

Part 1. Transform linear algebra

  • 004. translate, scale, rotate
  • 005. CSS matrix(a,b,c,d,e,f)
  • 006. 변환 순서와 transform-origin
  • 007. local, world, screen 좌표계
  • 008. inverse matrix와 포인터 입력
  • 009. 좌표와 transform 디버깅

Part 2. Infinite canvas math and architecture

  • 010. viewport와 camera 모델
  • 011. cursor anchored zoom
  • 012. ruler와 tick 계산
  • 013. 주기 함수와 grid step
  • 014. content, overlay, controls layer
  • 015. scene graph와 nested transform

Part 3. Editor tool math

  • 016. Pointer Events와 드래그
  • 017. DOMRect와 getBoundingClientRect
  • 018. hit testing과 bounding box
  • 019. selection rectangle과 marquee
  • 020. selection bounds와 handles
  • 021. resize와 rotation handle
  • 022. snapping과 smart guides
  • 023. group, frame, clipping

Part 4. CSS graphics properties as math

  • 024. CSS box로 도형 만들기
  • 025. clip-path, radius, shadow
  • 026. 선형보간과 linear-gradient
  • 027. 거리 함수와 radial/conic-gradient
  • 028. stacking context와 합성
  • 029. layout, paint, composite

Part 5. Editor state and persistence

  • 030. 레이어 모델과 z-index
  • 031. 이동, 복제, 삭제, 잠금
  • 032. undo/redo command model
  • 033. JSON export/import

Part 6. SVG overlay and vector editing

  • 034. SVG viewBox와 좌표계
  • 035. getScreenCTM과 inverse
  • 036. SVG pointer-events와 stroke hit testing
  • 037. cubic bezier path editing
  • 038. mask, clipPath, marker

Part 7. Figma to CSS translation

  • 040. Figma node와 CSS DOM 모델
  • 041. Frame constraints와 Auto Layout
  • 042. Fills, strokes, effects를 CSS로
  • 043. Vector와 text 변환
  • 044. gradient 밖의 CSS 수학
  • 045. Figma gradient를 CSS gradient로 변환하기
  • 046. 수학이 필요한 Figma to CSS 속성들
  • 047. Figma VectorNetwork 정리

Appendix A. Canvas renderer transition

  • 039. Canvas로 넘어가는 기준

Appendix B. Motion and timing

  • 048. 모션 수학과 timing 함수
  • 049. Keyframe timeline 엔진
  • 050. Motion path 수학
  • 051. Bezier curve 길이 구하기
Edit this page
최근 수정: 26. 5. 14. PM 5:45
Contributors: easylogic