Matrix 의 set,pre,post 호출 순서 상세 설명

1857 단어 matrixprepost
Matrix 가 일련의 set,pre,post 방법 을 호출 할 때 이 방법 들 을 하나의 대기 열 에 삽입 하 는 것 으로 볼 수 있 습 니 다.물론 대기 열 에서 처음부터 끝까지 호출 하여 실행 합 니 다.
그 중에서 pre 는 팀 의 머리 에 방법 을 삽입 하 는 것 을 나타 내 고 post 는 팀 의 끝 에 방법 을 삽입 하 는 것 을 나타 낸다.set 는 현재 대기 열 을 비우 고 항상 대기 열의 가장 중간 위치 에 있 음 을 표시 합 니 다.set 를 한 번 실행 한 후:pre 방법 은 항상 set 앞부분 의 대기 열의 맨 앞 에 삽입 되 고,post 방법 은 항상 set 뒷부분 의 대기 열의 맨 뒤에 삽 입 됩 니 다.
예 1:

Matrix m = new Matrix();
m.setRotate(45); 
m.setTranslate(80, 80);

m.setTranslate(80,80)만 유효 합 니 다.m.setRotate(45)때 문 입 니 다.제거 되 었 습 니 다.
예 2:

Matrix m = new Matrix();
m.setTranslate(80, 80);
m.postRotate(45);

m.setTranslate(80,80)를 먼저 실행 합 니 다.m.postRotate(45)를 실행 합 니 다.
예 3:

Matrix m = new Matrix();
m.setTranslate(80, 80);
m.preRotate(45);

m.setTranslate(80,80)를 먼저 실행 합 니 다.m.preRotate(45)를 실행 합 니 다.
예 4:

Matrix m = new Matrix();
m.preScale(2f,2f);  
m.preTranslate(50f, 20f);  
m.postScale(0.2f, 0.5f);  
m.postTranslate(20f, 20f); 

실행 순서:m.preTranslate(50f,20f)-->m.preScale(2f,2f)-->m.postScale(0.2f,0.5f)-->m.postTranslate(20f,20f)
메모:m.preTranslate(50f,20f)는 m.preScale(2f,2f)보다 먼저 실 행 됩 니 다.대기 열의 맨 앞 단 을 찾 았 기 때 문 입 니 다.
예 5:

Matrix m = new Matrix();
m.postTranslate(20, 20);  
m.preScale(0.2f, 0.5f);
m.setScale(0.8f, 0.8f);  
m.postScale(3f, 3f);
m.preTranslate(0.5f, 0.5f);

실행 순서:m.preTranslate(0.5f,0.5f)-->m.setScale(0.8f,0.8f)-->m.postScale(3f,3f)
메모:m.setScale(0.8f,0.8f)은 앞의 m.postTranslate(20,20)와 m.preScale(0.2f,0.5f)을 제거 합 니 다.
이상 의 Matrix 의 set,pre,post 호출 순서 에 대한 상세 한 설명 은 바로 편집장 이 여러분 에 게 공유 한 모든 내용 입 니 다.여러분 께 참고 할 수 있 고 많은 응원 을 바 랍 니 다.

좋은 웹페이지 즐겨찾기