본문 바로가기
Programming/LOGO

LOGO 3D 연습 : Castle - 001

by The Programmer 2025. 11. 16.

1. Introduction

 

Castle 모양 만들기. Cube를 만들고 이것들을 쌓아 올려 Castle 모양을 만들어 보겠습니다. 이전의 코드와 거의 동일하지만 약간 다른 면이 있습니다. 겹쳐져서 그려지는 부분은 전부 피하겠습니다. 그리고 코드 수정을 좀 더 쉽게 하기 위해서 변수를 사용합니다.

 

 

2. 기본 코드

 

to box1
    repeat 4 [ fd :side rt 90 ]
end

to castle1
    repeat 4 [ cube12 move3 ]
end

to cube1
    repeat 4 [ box1 move1 ]
end

to cube12
    repeat 11 [ cube1 move2 ]
end

to draw
    ;; 이 줄은 주석문입니다. 모서리 Cube가 겹쳐지면 안 됩니다.
    castle1
    ;; ht
end

to gotoStartingPosition
    pu back 150 lt 90 fd 500 rt 90
    pd
end

to main
    setup
    draw
end

to move1
    pu fd :side down 90
    pd
end

to move2
    pu down 90 fd (:side+:space) up 90
    pd
end

to move3
    ; Corner Turn
    ; goto Proper Point
    pu leftroll 90 rt 90 fd :space lt 90
    ; goto NextCube Pos.
    down 90 fd (:side+:space) up 90
    pd
    ; 겹치지 않게 수정함. 이렇게 하면, 한 면에 13개가 될 수도 있음:  cube12 함수의 repeat 횟수가 12라면.
    ; cube12를 cube11로 고치면 한 면에 12개.

    ; 함수 이름은 cube12인데 실제로는 11. 이런 이름은 그렇게 좋지는 않음.
end

to setup
    CS Home PPT PD ST
    gotoStartingPosition
    Perspective
    make "side 50
    make "space 15
end

 

 

3. 실행 결과

 

[ Logo 3D 연습 : Castle - Basic ]

 

 

 

 

4.  응용 연습

 

이 기본 성채(?)를 위로 쌓아 올려 Castle 모양이라고 우겨보도록 하겠습니다. ^.^;

 

이하 코드는 최소한의 수정만 합니다.

 

to box1
    repeat 4 [ fd :side rt 90 ]
end

to castle1
    repeat 4 [ cube12 move3 ]
end

to castle4
    repeat 4 [ castle1 move4 ]
end

to cube1
    repeat 4 [ box1 move1 ]
end

to cube12
    repeat 11 [ cube1 move2 ]
end

to draw
    ; castle1
    castle4
    ; ht
end

to gotoStartingPosition
    pu back 150 lt 90 fd 500 rt 90
    pd
end

to main
    setup
    draw
end

to move1
    pu fd :side down 90
    pd
end

to move2
    pu down 90 fd (:side+:space) up 90
    pd
end

to move3
    ; Corner Turn
    ; goto Proper Point
    pu leftroll 90 rt 90 fd :space lt 90
    ; goto NextCube Pos.
    down 90 fd (:side+:space) up 90
    pd
    ; 겹치지 않게 수정함. 이렇게 하면, 한 면에 13개.
    ; cube12를 cube11로 고치면 한 면에 12개.
end

to move4
    pu fd (:side+:space)
    pd
end

to setup
    CS Home PPT PD ST
    gotoStartingPosition
    Perspective
    make "side 50
    make "space 15
end

 

 

; 다른 곳은 수정된 곳이 없습니다. 기존 코드를 최대한 재활용하는 것이 좋습니다.

 

 

실행결과 :

 

[ Logo 3D 연습 : Castle - 001 ]

 

 

5. 첨부 파일

 

Logo_3D_Ex_003_Extra_James_001_Corner_Dup_.lgo
0.00MB
Logo_3D_Ex_003_Extra_James_002_Final_Answer_.lgo
0.00MB
Logo_3D_Ex_003_Extra_James_003_Castle_001_.lgo
0.00MB

 

 

 

6. 참고 자료들

 

1) FMS Logo 내장 도움말.

 

 

Be happy with programming!

^.^;

 

 

 

 

 

 

'Programming > LOGO' 카테고리의 다른 글

Another Flower - 1  (0) 2025.12.13
LOGO 3D - 002  (0) 2025.11.07
Logo 3D Ex. 001 - 기본 동작 1  (0) 2025.10.26
거북이 떼를 만나보세요 - 001  (0) 2025.08.07
컬러링 기초 연습 - 001  (0) 2025.06.29