1. Introduction
LOGO 사운드 그리고 미디MIDI 예제입니다. 첨부 파일이 반드시 필요한 예제입니다. 첨부 파일은 프로그램이 존재하는 위치의 하위 폴더로 data 폴더에 있어야 합니다. Logo 소스 파일이 있는 폴더에 하위 폴더로 data 폴더를 만들고 복사/붙여넣기 필요함.
2. Code
1) myMusic1 예제
; myMusic 1
; 일부 코드는 빠른 실행을 위해서 주석문 처리가 되었습니다. 의도적으로 Mute 시킴.
; 내용을 이해했다면 주석을 풀고 수정해서 사용해보세요.
; 이 프로그램들은 첨부 파일이 반드시 필요합니다.
; 이 예제에서는 폰트 사용법을 보여줍니다.
to draw
rt 90 star1
;
setlabelfont [ [D2Coding] 24 24 ]
label [ Hello, James! ^.^ ..... ]
;
; myMusic
; myMIDI
;
move1
pentagon1 ; for check.
;
; setlabelfont [ [D2Coding] 24 24 ]
; setlabelfont [ [D2Coding] 12 12 ]
; setlabelfont [ [맑은 고딕] 24 24 ]
;
move2
;
setlabelfont [ [맑은 고딕] 12 12 ]
label [ Hello, James! ^.^ ..... ]
; SOUND [1000 2000]
; F(herz), D(millisec).
HT
end
to main
setup
draw
end
to move1
pu fd :side
pd
end
to move2
pu fd (:side - 120)
pd
end
TO myMIDI
IGNORE MCI [open c:\\windows\\media\\flourish.mid type sequencer alias flourish]
; IGNORE MCI [open .\\data\\flourish.mid type sequencer alias flourish]
; IGNORE MCI [open .\\data\\onestop.mid type sequencer alias onestop]
;
; .\\ means where Logo Project File "pentagon_ex_001_.lgo" exists.
; And the subfolder "data" is required.
;
; All mid files were in the system folder :
; c:windowsmedia\n ;
;
MCI [play flourish]
; MCI [play onestop]
;
; WAIT 600 ; 10 sec.
WAIT 1200
; WAIT 1800 ; 30 sec.
;
MCI [stop flourish]
; MCI [stop onestop]
;
MCI [close flourish]
; MCI [close onestop]
WAIT 600 ; for safe close.
END
to myMusic
SOUND [ 450 500 ]
SOUND [ 450 500 ]
SOUND [ 550 500 ]
SOUND [ 550 500 ]
SOUND [ 450 500 ]
SOUND [ 450 500 ]
SOUND [ 350 2000 ]
; SOUND [ 1000 500 ]
end
to pentagon1
repeat 5 [ fd :side2 rt 72 ]
end
to setup
Window Home CS PPT PD ST
pu lt 90 fd 460 rt 90 fd 100 pd
;
make "side 360
make "side2 200
end
to star1
repeat 5 [ fd :side lt 72 fd :side rt 144 ]
end
2) myMusic2 예제
; myMusic2
; 이 프로그램들은 첨부 파일이 반드시 필요합니다.
; 실제 음악 재생함. 전체 재생에 1분 이상 소요됨.
to draw
rt 90 star1
myMusic
myMIDI
; SOUND [1000 2000]
; F(herz), D(millisec).
; HT
end
to main
setup
draw
end
TO myMIDI
IGNORE MCI [open c:\\windows\\media\\flourish.mid type sequencer alias flourish]
; IGNORE MCI [open .\\data\\flourish.mid type sequencer alias flourish]
; IGNORE MCI [open .\\data\\onestop.mid type sequencer alias onestop]
;
; .\\ means where Logo Project File "pentagon_ex_001_.lgo" exists.
; And the subfolder "data" is required.
;
; All mid files were in the system folder :
; c:windowsmedia\n ;
;
MCI [play flourish]
; MCI [play onestop]
;
; WAIT 600 ; 10 sec.
WAIT 6000 ; 1 min.
;
MCI [stop flourish]
; MCI [stop onestop]
;
MCI [close flourish]
; MCI [close onestop]
END
to myMusic
SOUND [ 450 500 ]
SOUND [ 450 500 ]
SOUND [ 550 500 ]
SOUND [ 550 500 ]
SOUND [ 450 500 ]
SOUND [ 450 500 ]
SOUND [ 350 2000 ]
; SOUND [ 1000 500 ]
end
to pentagon1
repeat 5 [ fd :side2 rt 72 ]
end
to setup
Window Home CS PPT PD ST
pu lt 90 fd 460 rt 90 fd 100 pd
;
make "side 360
make "side2 80
end
to star1
repeat 5 [ fd :side lt 72 fd :side rt 144 ]
end
3. Result
큰 별 하나 두둥! ~~
^.^;
그리고 소리와 음악 재생됨.
4. Notes
1) 위 코드들의 핵심으로 주석 처리된 부분이 중요함.
to draw
rt 90 star1
myMusic
myMIDI
; SOUND [1000 2000]
; 음의 주파수F(herz), 음의 지속시간D(millisec).
; HT
end
2) MCI
MCI Play, Stop, Close.
3) Wait 명령어.
Wait 60
; 60의 의미는?
4) 폰트 사용법 :
- 괄호 사용과 가로 세로 크기 옵션에만 주의하면 됨.
setlabelfont [ [D2Coding] 24 24 ]
label [ Hello, James! ^.^ ..... ]
setlabelfont [ [맑은 고딕] 12 12 ]
label [ Hello, James! ^.^ ..... ]
■ 응용 연습 과제
1) 소리 파일 변경.
2) 소리 녹음.
3) 소리 주파수 변경해서 듣기.
■ 소리 주파수??? !!!
5. Files
1) Mute 버전 :
2) Play 버전 :
3) Data 파일 : 이 파일들은 위 Logo 소스 파일이 있는 위치에 하위 폴더로 data 폴더에 있어야 합니다. 실행될 때 data폴더를 찾습니다.
4) 참고용 Sound 프로그램과 Data 파일(FMSLogo 공식 예제 파일, 일부 변경됨.) :
6. Ref.
1) FMSLogo 공식 도움말
2) FMSLogo SourceForge 저장소 공식 예제.
Happy Programming!
^.^;
'Programming > LOGO' 카테고리의 다른 글
LOGO 중급 연습 - repCount - 001 (0) | 2024.11.20 |
---|---|
LOGO : 변수(Variables) - 017 - 정오각형(Pentagon) 연습 - 2 (0) | 2024.08.18 |
LOGO : 변수(Variables) - 016 - 정오각형(Pentagon) 연습 - 1 (0) | 2024.07.28 |
LOGO : 변수(Variables) - 015 - KFlag (0) | 2024.06.25 |
LOGO : 변수(Variables) - 014 - LevelMeterBox (0) | 2024.06.16 |