일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 코딩
- vim-go
- 백준
- BOJ
- JUCE라이브러리
- 운영체제
- gui
- JUCE library
- LOB
- C++ gui
- Docker
- 프로그래밍
- Nebula
- JUCE
- C언어
- 리듬게임
- c++ heap
- 자료구조
- JUCE 튜토리얼
- tour of go
- go channel
- go
- 알고리즘
- a tour of go
- OS
- 연결리스트
- C++ library
- C++ gui 라이브러리
- C++
- 공룡책
- Today
- Total
목록JUCE library (10)
CafeM0ca
모카는 animation 컴포넌트를 사용하고 있다. 그래서 Audio 컴포넌트를 추가하면.. 이렇게 에러가 발생한다. 이를 해결할려면 Projucer의 모듈에서 juce_audio_utils을 추가해주면 된다.
//발번역 https://juce.com/doc/tutorial_simple_synth_noise Projucer에서 Audio Application template. 오디오 관련 응용프로그램 만들때 유용하다. 데모 프로젝트를 실행해보면 삐-소리가 난다. 이번 튜토리얼에서는 오디오 출력만 구현할꺼다. 오디오 입력과 현실시간 오디오 입력 데이터 처리는 다른 튜토리얼에서 알아볼것이다.오디오 어플리케이션 템플릿은 GUI 어플리케이션 템플릿과 비슷하다. 아래의 경우만 제외하면 말이다.- MainContentComponent 클래스는 AudioAppComponent클래스를 Component클래스 대신 상속한다.- juce_audio_utils 모듈이 프로젝트에 추가되었고 다른 오디오 관련 모듈들이 프로젝트에 기본..
//발번역 https://juce.com/doc/tutorial_label 데모 프로젝트데모 프로젝트는 몇개의 레이블을 포함하고 있다. 이 중에서 일부는 텍스트를 표시하기위한 것이며, 다른것은 텍스트를 입력받기위한 것이다. 데모 프로젝트를 실행하면 아래와 같다. 하얀색 백그라운드를 클릭하면 수정이 가능하게된다. 레이블은 미묘한 경계와 탈자 기호가 나타난다. 텍스트를 입력하면 레이블에 보여진다. 레이블에서 돌아서거나 클릭하면 편집 가능 상태가된다. 이것은 리스너에게 브로드 캐스팅되는 변경을 커밋한다. 이 경우 텍스트를 대문자로 변환하여 다른 레이블에 표시한다. 텍스트를 표시하고 입력할 때 Label 클래스를 여러 가지 용도로 사용한다. 여기에는 약간 다른 방식으로 사용되는 다섯개의 레이블이 있다.- 제목으..
//발번역 https://juce.com/doc/tutorial_slider_values 데모 프로젝트 빌드과정에서 아래와 같이 라이브러리 빌드 에러 발생시 Projucer실행하여 프로젝트를 열고 모듈->global path를 해제해주면된다. 데모 프로젝트 데모 프로젝트는 두개의 슬라이더 수직선을 보여준다. 하나는 레이블이 Frequency고 다른 하나는 레이블이 Duration이다. 이 개념은 주파수(f)가 지속 시간의 역수(d)이기 때문에 기본적으로 두 슬라이더 모두 동일한 기본 값을 표시한다.f = 1/4둘 중 하나의 슬라이더가 움직이면 또 다른 슬라이더가 변경사항을 반영하여 갱신된다. JUCE Slider 클래스이 튜토리얼은 슬라이더를 만드는 방법이랑 범위 설정, 값 변경, 슬라이더 값 프로그래밍..
//발번역 https://juce.com/doc/tutorial_listeners_and_broadcasters 데모 프로젝트는 버튼,레이블이 하나씩 있다. 이 인터페이스는 아무것도 제공하지 않는다. 코드를 추가해서 버튼이 레이블에 현제 데이터와 시간을 표시해보자. 인터페이스 구성MainContentComponent 클래스는 자식컴포넌트로 TextButton 객체와 Lable 객체를 구성하고 있다. TextButton 객체는 버튼이 포함된 텍스트 표시할 수 있고 Lable 객체는 텍스트 부분을 표시할 수 있다. Note: TextButton 클래스는 버튼의 일종이다. Button 클래스는 JUCE에서 많은 타입이 있다. API 레퍼런스 문서 ToggleButton,ShapeButton,ImageButto..
//발번역 https://docs.juce.com/master/tutorial_rectangle_advanced.html 데모 프로젝트는 적은 수의 버튼 컴포넌트를 사용하여 상위 컴포넌트에 배치한다. 이 예제에서 placeholders로 버튼을 사용하고 있다. JUCE의 어트 타입의 컴포넌트도 된다. 빌드하고 실행해보면 다음과 같다. 직사각형 레이아웃 // 레이아웃은 겹 또는 층이라 이해하면 된다.이 간단한 응용프로그램에서 메인윈도우의 몇 가지 영역이 있다.-header 구역에 타이틀이나 툴바-footer 구역에 어플리케이션의 정보-Sidebar에 섹션의 종류또는 컴포넌트-몇가지 컴포넌트 항목이 창의 나머지 부분 아래 코드들은 MainContentComponent 생성자에 추가되어있다. MainConte..
//발번역 https://docs.juce.com/master/tutorial_look_and_feel_customisation.html 어플리케이션에서 자신만의 스킨을 적용해서 커스텀마이징해보자. 데모 프로젝트를 실행해보면 아래와 같다. LookAndFeel 클래스는 JUCE에서 사용자 정의된 GUI를 만드는 기본 도구다. LookAndFeel 클래스를 사용하여 현재 컴포넌트가 갖고있는 기본 색상을 간단하게 바꿀 수 있다. 그뿐만아니라 많은 컴포넌트들을 커스텀마이징하여 그릴 수 있다. colours 커스텀하기컴포넌트에 LookAndFeel 객체가 적용되면 해당 컴포넌트에 적용되고 구체적으로 look-and-feel이 다른경우가 아니면 자식 컴포넌트도 적용된다. look-and-feel 시스템으로 기본 ..
//발번역 https://juce.com/doc/tutorial_component_parents_children 이번 튜토리얼에서는 Component 클래스의 계층적 특징을 설명하는것에 의해 하나의 컴포넌트가 하나 이상의 중첩된 자식 컴포넌트를 가질 수 있다. 압축 풀고 실행시키면 아래와 같다. 모카는 컴파일 에러가 뜬다. 자료형이 일치하지 않다고 하는데 getLocalBounds() 함수가 Rectangle인데 어쩌냐.. 왜 이렇게 만든건지도 모르겠다. 컴포넌트 클래스의 계층대부분의 유저 인터페이스는 몇개의 요소들로 이루는데 텍스트,버튼,슬라이더,메뉴같은 것들이다. 예를 들어 다음 스크린샷은 AudioDeviceSelectorComponent 클래스를 보여준다. 버튼과 몇개의 레이블과 메뉴(연속되는 박..
//발번역 https://juce.com/doc/tutorial_graphics_class 이번 튜토리얼에서는 그래픽 객체로 텍스트,선,기하학적 모양을 그리는 방법에 대해 알려준다. 당신은 이미 메인 컴포넌트가 나타내는게 paint() 함수 구현에 의해 정의되어있는걸 알고있다. 이 데모 프로젝트는 이전 튜토리얼이 끝난 곳에서 시작한다. paint() 함수의 처음 구현부분은 다음과 같다.void MainComponent::paint (Graphics& g){ g.fillAll (Colours::lightblue); g.setColour (Colours::darkblue); g.setFont (14.0f); g.drawText ("Hello, World!", getLocalBounds(), Justifica..
환경: 우분투 16.04 JUCE를 make하려는데 오류가 뿜뿜터진다.. 이도저도 못하고;;영어 울렁증이 돋았지만 한줄한줄 읽어보니No package 'webkit2gtk-4.0' found 라 써있다. 현실도피하고 싶지만 개발할려면 꼭 필요하니.. (nana library에서 통수맞아서 더이상 물러설곳이 없다..) 열심히 구글링해서~ 찾았다.sudo add-apt-repository ppa:webkit-team/ppa sudo apt-get update sudo apt-get install libwebkit2gtk-4.0-37 libwebkit2gtk-4.0-dev순서대로 해주면 됀다~ 설치가 끝나면 다시 make하면 빌드 끝~make한곳에서 build디렉토리로 들어가보면 HelloWorld프로그램이 ..