OSS는 처음이에요?

8319 단어 JavaScriptidea

왜 그래?

three.js editor 버그가 발견돼 Giithub에서 Pull request를 보냈어요.
아직 합병하지 않았습니다.(2020-12-31)

three.js editor 소개


https://threejs.org/editor/ three.js의 3D 데이터를 사용하여 웹 응용 프로그램을 편집합니다.
Progressive Web Apps이므로 설치하여 사용할 수도 있습니다.

어떤 구린내 나는 벌레


특정 작업을 수행하는 경우 객체에 사용할 수 있는 정점을 추가하는 버튼이 비활성화됩니다.

  • 위 메뉴AddLathe에서 대상을 추가합니다.

  • Geometory를 선택합니다.


  • 맨 아래 정점11에 있는 -을 클릭하여 삭제합니다.

  • 이 작업 후에 + 단추를 눌러도 정점을 추가할 수 없습니다.

    컨텐트 수정


    그룹 요소에 예상치 못한 null 오류가 포함되어 있기 때문에 개발자 컨트롤에 문제가 표시됩니다.
    ( ˘ω˘).oO(왜 시험에서 들키지 않았을까?)
    소스 코드로 말하자면 three.js/editor/js/libs/ui.three.js의 730줄 정도입니다.
    수정 전
    UIPoints2.addRow = function () {
    
    	if ( this.pointsUI.length === 0 ) {
    
    		this.pointsList.add( this.createPointRow( 0, 0 ) );
    
    	} else {
    
    		var point = this.pointsUI[ this.pointsUI.length - 1 ];
    
    		this.pointsList.add( this.createPointRow( point.x.getValue(), point.y.getValue() ) );
    
    	}
    
    	this.update();
    
    };
    
    수정 후
    UIPoints2.addRow = function () {
    
    	var x = 0, y = 0;
    
    	for ( var i = this.pointsUI.length  - 1; i >= 0; i -- ) {
    
    		var pointUI = this.pointsUI[ i ];
    
    		if ( pointUI != null ) {
    
    			x = pointUI.x.getValue();
    			y = pointUI.y.getValue();
    			break;
    
    		}
    
    	}
    
    	this.pointsList.add( this.createPointRow( x, y ) );
    
    	this.update();
    
    };
    
    원래this.pointsUI에 포함된 null는 느낌이 좋지 않았지만 다른 방법은 무시null로 처리했기 때문에null의 요소는 그렇게 처리했다.
    지허브 자체가 최근에 시작한 거라 모르는 게 많은데 해보지 않으면 몰라서 좀 놀랐어요.
    합병이 잘 됐으면 좋겠어요.

    좋은 웹페이지 즐겨찾기