├── .appveyor.yml ├── .gitignore ├── .travis.yml ├── README.md ├── example-chaining ├── Makefile ├── Project.xcconfig ├── addons.make ├── bin │ └── data │ │ └── .gitkeep ├── config.make ├── example-chaining.xcodeproj │ ├── project.pbxproj │ └── xcshareddata │ │ └── xcschemes │ │ ├── example-chaining Debug.xcscheme │ │ └── example-chaining Release.xcscheme ├── openFrameworks-Info.plist └── src │ ├── main.cpp │ ├── ofApp.cpp │ └── ofApp.h ├── example-frameBlendling ├── Makefile ├── Project.xcconfig ├── addons.make ├── bin │ └── data │ │ └── .gitkeep ├── config.make ├── example-frameBlendling.xcodeproj │ ├── project.pbxproj │ └── xcshareddata │ │ └── xcschemes │ │ ├── example-frameBlendling Debug.xcscheme │ │ └── example-frameBlendling Release.xcscheme ├── openFrameworks-Info.plist └── src │ ├── main.cpp │ ├── ofApp.cpp │ └── ofApp.h ├── example-simple-documentation ├── Makefile ├── Project.xcconfig ├── addons.make ├── bin │ └── data │ │ └── .gitkeep ├── config.make ├── example-simple-documentation.xcodeproj │ ├── project.pbxproj │ └── xcshareddata │ │ └── xcschemes │ │ ├── example-simple-documentation Debug.xcscheme │ │ └── example-simple-documentation Release.xcscheme ├── openFrameworks-Info.plist └── src │ ├── main.cpp │ ├── ofApp.cpp │ └── ofApp.h ├── example-triangle ├── Makefile ├── Project.xcconfig ├── addons.make ├── bin │ └── data │ │ └── .gitkeep ├── config.make ├── example-triangle.xcodeproj │ ├── project.pbxproj │ └── xcshareddata │ │ └── xcschemes │ │ ├── example-triangle Debug.xcscheme │ │ └── example-triangle Release.xcscheme ├── openFrameworks-Info.plist └── src │ ├── main.cpp │ ├── ofApp.cpp │ └── ofApp.h ├── license.md ├── ofxaddons_thumbnail.png ├── screenshots ├── blending0.png └── blending1.png └── src ├── ofxSandLine.cpp └── ofxSandLine.h /.appveyor.yml: -------------------------------------------------------------------------------- 1 | version: 1.0.{build} 2 | os: Visual Studio 2015 RC 3 | 4 | environment: 5 | global: 6 | APPVEYOR_OS_NAME: windows 7 | matrix: 8 | #MSYS2 Building 9 | - platform: x86 10 | BUILDER: MSYS2 11 | 12 | #VisualStudio Building 13 | - platform: x86 14 | BUILDER : VS 15 | BITS: 32 16 | - platform: x64 17 | BUILDER : VS 18 | BITS: 64 19 | 20 | configuration: Debug 21 | shallow_clone: true 22 | clone_depth: 10 23 | init: 24 | - set MSYS2_PATH=c:\msys64 25 | - set CHERE_INVOKING=1 26 | - if "%BUILDER%_%PLATFORM%"=="MSYS2_x86" set MSYSTEM=MINGW32 27 | - if "%BUILDER%_%PLATFORM%"=="MSYS2_x64" set MSYSTEM=MINGW64 28 | - if "%BUILDER%"=="VS" set PATH=C:\Program Files (x86)\MSBuild\14.0\Bin;%PATH% 29 | 30 | install: 31 | - cd .. 32 | - git clone --depth=1 --branch=master https://github.com/openframeworks/openFrameworks 33 | - call openFrameworks\scripts\ci\addons\install.cmd 34 | 35 | build_script: 36 | - cd %OF_PATH% 37 | - scripts\ci\addons\build.cmd 38 | 39 | 40 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | ######################### 2 | # general patterns 3 | ######################### 4 | 5 | docs/html 6 | docs/tagfile.xml 7 | 8 | */bin/* 9 | !*/bin/data/ 10 | 11 | # for bin folder in root 12 | /bin/* 13 | !/bin/data/ 14 | 15 | [Bb]uild/ 16 | [Oo]bj/ 17 | *.o 18 | [Dd]ebug*/ 19 | [Rr]elease*/ 20 | *.mode* 21 | *.app/ 22 | *.pyc 23 | .svn/ 24 | 25 | ######################### 26 | # IDE 27 | ######################### 28 | 29 | # XCode 30 | *.pbxuser 31 | *.perspective 32 | *.perspectivev3 33 | *.mode1v3 34 | *.mode2v3 35 | #XCode 4 36 | xcuserdata 37 | *.xcworkspace 38 | 39 | # Code::Blocks 40 | *.depend 41 | *.layout 42 | *.cbTemp 43 | 44 | # Visual Studio 45 | *.sdf 46 | *.opensdf 47 | *.suo 48 | *.pdb 49 | *.ilk 50 | *.aps 51 | ipch/ 52 | 53 | # Eclipse 54 | .metadata 55 | local.properties 56 | .externalToolBuilders 57 | 58 | # Codelite 59 | *.session 60 | *.tags 61 | *.workspace.* 62 | 63 | ######################### 64 | # operating system 65 | ######################### 66 | 67 | # Linux 68 | *~ 69 | # KDE 70 | .directory 71 | .AppleDouble 72 | 73 | # OSX 74 | .DS_Store 75 | *.swp 76 | *~.nib 77 | # Thumbnails 78 | ._* 79 | 80 | # Windows 81 | # Windows image file caches 82 | Thumbs.db 83 | # Folder config file 84 | Desktop.ini 85 | 86 | #Android 87 | .csettings 88 | 89 | ######################### 90 | # packages 91 | ######################### 92 | 93 | # it's better to unpack these files and commit the raw source 94 | # git has its own built in compression methods 95 | *.7z 96 | *.dmg 97 | *.gz 98 | *.iso 99 | *.jar 100 | *.rar 101 | *.tar 102 | *.zip 103 | 104 | # Logs and databases 105 | *.log 106 | *.sql 107 | *.sqlite 108 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | # This file allows testing your addon using travis CI servers to use it you'll need to 2 | # create an account in travis.org and enable your addon there. 3 | # 4 | # By default it will test linux 64bit and osx against the master and stable OF branches. 5 | # Other platforms can be enabled by uncommenting the corresponding sections. 6 | # 7 | # If any extra install is needed to use the addon it can be included in the corresponding 8 | # install script in: 9 | # 10 | # scripts/ci/$TARGET/install.sh 11 | # 12 | 13 | 14 | language: c++ 15 | compiler: gcc 16 | sudo: true 17 | matrix: 18 | include: 19 | # fully specify builds, include can't dynamically expand matrix entries 20 | # relative order of sudo and env is important so that addons: is recognized 21 | 22 | # Linux 64bit, OF master 23 | - os: linux 24 | dist: trusty 25 | sudo: required 26 | env: TARGET="linux64" OF_BRANCH="master" 27 | addons: 28 | apt: 29 | sources: 30 | - ubuntu-toolchain-r-test 31 | packages: 32 | - gcc-4.9 33 | - g++-4.9 34 | - gdb 35 | 36 | # Linux 64bit, OF stable: Not supported yet 37 | # - os: linux 38 | # dist: trusty 39 | # sudo: required 40 | # env: TARGET="linux64" OF_BRANCH="stable" 41 | # addons: 42 | # apt: 43 | # sources: 44 | # - ubuntu-toolchain-r-test 45 | # packages: 46 | # - gcc-4.9 47 | # - g++-4.9 48 | # - gdb 49 | 50 | # OSX, OF master 51 | - os: osx 52 | osx_image: xcode8 53 | compiler: clang 54 | env: TARGET="osx" OF_BRANCH="master" 55 | 56 | # OSX, OF stable: Not supported yet 57 | # - os: osx 58 | # osx_image: xcode8 59 | # compiler: clang 60 | # env: TARGET="osx" OF_BRANCH="stable" 61 | 62 | # Linux ARM6, OF master: Uncomment following lines to enable 63 | # - os: linux 64 | # sudo: required 65 | # dist: trusty 66 | # env: TARGET="linuxarmv6l" OF_BRANCH="master" 67 | 68 | 69 | # Linux ARM6, OF stable: Not supported yet 70 | # - os: linux 71 | # sudo: required 72 | # dist: trusty 73 | # env: TARGET="linuxarmv6l" OF_BRANCH="stable" 74 | 75 | # Linux ARM7, OF master: Uncomment following lines to enable 76 | # - os: linux 77 | # sudo: false 78 | # env: TARGET="linuxarmv7l" OF_BRANCH="master" 79 | # cache: 80 | # directories: 81 | # - ~/rpi2_toolchain 82 | # - ~/firmware-master 83 | # - ~/archlinux 84 | 85 | # Linux ARM7, OF stable: Not supported yet 86 | # - os: linux 87 | # sudo: false 88 | # env: TARGET="linuxarmv7l" OF_BRANCH="stable" 89 | # cache: 90 | # directories: 91 | # - ~/rpi2_toolchain 92 | # - ~/firmware-master 93 | # - ~/archlinux 94 | 95 | 96 | # Emscripten, OF master: Uncomment following lines to enable 97 | # - os: linux 98 | # sudo: false 99 | # env: TARGET="emscripten" OF_BRANCH="master" 100 | # addons: 101 | # apt: 102 | # sources: 103 | # - ubuntu-toolchain-r-test 104 | # packages: 105 | # - libstdc++6 106 | 107 | 108 | # Emscripten, OF stable: Not supported yet 109 | # - os: linux 110 | # sudo: false 111 | # env: TARGET="emscripten" OF_BRANCH="stable" 112 | # addons: 113 | # apt: 114 | # sources: 115 | # - ubuntu-toolchain-r-test 116 | # packages: 117 | # - libstdc++6 118 | 119 | 120 | # iOS, OF master: Not supported yet 121 | # - os: osx 122 | # osx_image: xcode8 123 | # compiler: clang 124 | # env: TARGET="ios" OF_BRANCH="master" 125 | 126 | 127 | # iOS, OF stable: Not supported yet 128 | # - os: osx 129 | # osx_image: xcode8 130 | # compiler: clang 131 | # env: TARGET="ios" OF_BRANCH="stable" 132 | 133 | 134 | # tvOS, OF master: Not supported yet 135 | # - os: osx 136 | # osx_image: xcode8 137 | # compiler: clang 138 | # env: TARGET="tvos" OF_BRANCH="master" 139 | 140 | 141 | # tvOS, OF stable: Not supported yet 142 | # - os: osx 143 | # osx_image: xcode8 144 | # compiler: clang 145 | # env: TARGET="tvos" OF_BRANCH="stable" 146 | 147 | 148 | # Android armv7, OF master: Uncomment following lines to enable 149 | # - os: linux 150 | # sudo: false 151 | # env: TARGET="android" OPT="armv7" OF_BRANCH="master" 152 | # cache: 153 | # directories: 154 | # - ~/android-ndk-r12b 155 | 156 | 157 | # Android armv7, OF stable: Not supported yet 158 | # - os: linux 159 | # sudo: false 160 | # env: TARGET="android" OPT="armv7" OF_BRANCH="stable" 161 | # cache: 162 | # directories: 163 | # - ~/android-ndk-r12b 164 | 165 | 166 | # Android x86, OF master: Uncomment following lines to enable 167 | # - os: linux 168 | # sudo: false 169 | # env: TARGET="android" OPT="x86" OF_BRANCH="master" 170 | # cache: 171 | # directories: 172 | # - ~/android-ndk-r12b 173 | 174 | 175 | # Android x86, OF stable: Not supported yet 176 | # - os: linux 177 | # sudo: false 178 | # env: TARGET="android" OPT="x86" OF_BRANCH="stable" 179 | # cache: 180 | # directories: 181 | # - ~/android-ndk-r12b 182 | 183 | 184 | # Exclude the default build that would otherwise be generated 185 | # see https://github.com/travis-ci/travis-ci/issues/1228 186 | exclude: 187 | - compiler: gcc 188 | 189 | install: 190 | - cd ~ 191 | - git clone --depth=1 --branch=$OF_BRANCH https://github.com/openframeworks/openFrameworks 192 | - cd openFrameworks 193 | - scripts/ci/addons/install.sh 194 | 195 | script: 196 | - scripts/ci/addons/build.sh 197 | 198 | git: 199 | depth: 10 200 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | [![Build status](https://travis-ci.org/sourya-sen/ofxSandLine.svg?branch=master)](https://travis-ci.org/sourya-sen/ofxSandLine) 2 | 3 | ofxSandLine 4 | ===================================== 5 | ofxSandLine is a generative drawing tool based on [this article](http://inconvergent.net/grains-of-sand/) by Anders Hoff. 6 | 7 | It might seem super simple but it's super easy to start generating images like this: 8 | 9 | ![screenshot0](screenshots/blending0.png) 10 | ![screenshot1](screenshots/blending1.png) 11 | 12 | Installation 13 | ------------ 14 | Put the ofxSandLine folder into your addons folder. 15 | 16 | Documentation 17 | ------------ 18 | The `example-simple-documentation` has all the different functions documented. 19 | 20 | Compatibility 21 | ------------ 22 | Tested with 0.9.8 OSX. Should work with Windows and Linux too, if there are any issues, let me know! 23 | 24 | Version history 25 | ------------ 26 | #### Version 0.2 (6 Feb 2018): 27 | ofxSandTriangle support. 28 | 29 | #### Version 0.1 (4 Jan 2018): 30 | Initial release. 31 | -------------------------------------------------------------------------------- /example-chaining/Makefile: -------------------------------------------------------------------------------- 1 | # Attempt to load a config.make file. 2 | # If none is found, project defaults in config.project.make will be used. 3 | ifneq ($(wildcard config.make),) 4 | include config.make 5 | endif 6 | 7 | # make sure the the OF_ROOT location is defined 8 | ifndef OF_ROOT 9 | OF_ROOT=$(realpath ../../..) 10 | endif 11 | 12 | # call the project makefile! 13 | include $(OF_ROOT)/libs/openFrameworksCompiled/project/makefileCommon/compile.project.mk 14 | -------------------------------------------------------------------------------- /example-chaining/Project.xcconfig: -------------------------------------------------------------------------------- 1 | //THE PATH TO THE ROOT OF OUR OF PATH RELATIVE TO THIS PROJECT. 2 | //THIS NEEDS TO BE DEFINED BEFORE CoreOF.xcconfig IS INCLUDED 3 | OF_PATH = ../../.. 4 | 5 | //THIS HAS ALL THE HEADER AND LIBS FOR OF CORE 6 | #include "../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig" 7 | 8 | //ICONS - NEW IN 0072 9 | ICON_NAME_DEBUG = icon-debug.icns 10 | ICON_NAME_RELEASE = icon.icns 11 | ICON_FILE_PATH = $(OF_PATH)/libs/openFrameworksCompiled/project/osx/ 12 | 13 | //IF YOU WANT AN APP TO HAVE A CUSTOM ICON - PUT THEM IN YOUR DATA FOLDER AND CHANGE ICON_FILE_PATH to: 14 | //ICON_FILE_PATH = bin/data/ 15 | 16 | OTHER_LDFLAGS = $(OF_CORE_LIBS) $(OF_CORE_FRAMEWORKS) 17 | HEADER_SEARCH_PATHS = $(OF_CORE_HEADERS) 18 | -------------------------------------------------------------------------------- /example-chaining/addons.make: -------------------------------------------------------------------------------- 1 | ofxSandLine 2 | -------------------------------------------------------------------------------- /example-chaining/bin/data/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sourya-sen/ofxSandLine/88b0bfc1fab841697e54b63169ad7695db6d2d85/example-chaining/bin/data/.gitkeep -------------------------------------------------------------------------------- /example-chaining/config.make: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # CONFIGURE PROJECT MAKEFILE (optional) 3 | # This file is where we make project specific configurations. 4 | ################################################################################ 5 | 6 | ################################################################################ 7 | # OF ROOT 8 | # The location of your root openFrameworks installation 9 | # (default) OF_ROOT = ../../.. 10 | ################################################################################ 11 | # OF_ROOT = ../../.. 12 | 13 | ################################################################################ 14 | # PROJECT ROOT 15 | # The location of the project - a starting place for searching for files 16 | # (default) PROJECT_ROOT = . (this directory) 17 | # 18 | ################################################################################ 19 | # PROJECT_ROOT = . 20 | 21 | ################################################################################ 22 | # PROJECT SPECIFIC CHECKS 23 | # This is a project defined section to create internal makefile flags to 24 | # conditionally enable or disable the addition of various features within 25 | # this makefile. For instance, if you want to make changes based on whether 26 | # GTK is installed, one might test that here and create a variable to check. 27 | ################################################################################ 28 | # None 29 | 30 | ################################################################################ 31 | # PROJECT EXTERNAL SOURCE PATHS 32 | # These are fully qualified paths that are not within the PROJECT_ROOT folder. 33 | # Like source folders in the PROJECT_ROOT, these paths are subject to 34 | # exlclusion via the PROJECT_EXLCUSIONS list. 35 | # 36 | # (default) PROJECT_EXTERNAL_SOURCE_PATHS = (blank) 37 | # 38 | # Note: Leave a leading space when adding list items with the += operator 39 | ################################################################################ 40 | # PROJECT_EXTERNAL_SOURCE_PATHS = 41 | 42 | ################################################################################ 43 | # PROJECT EXCLUSIONS 44 | # These makefiles assume that all folders in your current project directory 45 | # and any listed in the PROJECT_EXTERNAL_SOURCH_PATHS are are valid locations 46 | # to look for source code. The any folders or files that match any of the 47 | # items in the PROJECT_EXCLUSIONS list below will be ignored. 48 | # 49 | # Each item in the PROJECT_EXCLUSIONS list will be treated as a complete 50 | # string unless teh user adds a wildcard (%) operator to match subdirectories. 51 | # GNU make only allows one wildcard for matching. The second wildcard (%) is 52 | # treated literally. 53 | # 54 | # (default) PROJECT_EXCLUSIONS = (blank) 55 | # 56 | # Will automatically exclude the following: 57 | # 58 | # $(PROJECT_ROOT)/bin% 59 | # $(PROJECT_ROOT)/obj% 60 | # $(PROJECT_ROOT)/%.xcodeproj 61 | # 62 | # Note: Leave a leading space when adding list items with the += operator 63 | ################################################################################ 64 | # PROJECT_EXCLUSIONS = 65 | 66 | ################################################################################ 67 | # PROJECT LINKER FLAGS 68 | # These flags will be sent to the linker when compiling the executable. 69 | # 70 | # (default) PROJECT_LDFLAGS = -Wl,-rpath=./libs 71 | # 72 | # Note: Leave a leading space when adding list items with the += operator 73 | ################################################################################ 74 | 75 | # Currently, shared libraries that are needed are copied to the 76 | # $(PROJECT_ROOT)/bin/libs directory. The following LDFLAGS tell the linker to 77 | # add a runtime path to search for those shared libraries, since they aren't 78 | # incorporated directly into the final executable application binary. 79 | # TODO: should this be a default setting? 80 | # PROJECT_LDFLAGS=-Wl,-rpath=./libs 81 | 82 | ################################################################################ 83 | # PROJECT DEFINES 84 | # Create a space-delimited list of DEFINES. The list will be converted into 85 | # CFLAGS with the "-D" flag later in the makefile. 86 | # 87 | # (default) PROJECT_DEFINES = (blank) 88 | # 89 | # Note: Leave a leading space when adding list items with the += operator 90 | ################################################################################ 91 | # PROJECT_DEFINES = 92 | 93 | ################################################################################ 94 | # PROJECT CFLAGS 95 | # This is a list of fully qualified CFLAGS required when compiling for this 96 | # project. These CFLAGS will be used IN ADDITION TO the PLATFORM_CFLAGS 97 | # defined in your platform specific core configuration files. These flags are 98 | # presented to the compiler BEFORE the PROJECT_OPTIMIZATION_CFLAGS below. 99 | # 100 | # (default) PROJECT_CFLAGS = (blank) 101 | # 102 | # Note: Before adding PROJECT_CFLAGS, note that the PLATFORM_CFLAGS defined in 103 | # your platform specific configuration file will be applied by default and 104 | # further flags here may not be needed. 105 | # 106 | # Note: Leave a leading space when adding list items with the += operator 107 | ################################################################################ 108 | # PROJECT_CFLAGS = 109 | 110 | ################################################################################ 111 | # PROJECT OPTIMIZATION CFLAGS 112 | # These are lists of CFLAGS that are target-specific. While any flags could 113 | # be conditionally added, they are usually limited to optimization flags. 114 | # These flags are added BEFORE the PROJECT_CFLAGS. 115 | # 116 | # PROJECT_OPTIMIZATION_CFLAGS_RELEASE flags are only applied to RELEASE targets. 117 | # 118 | # (default) PROJECT_OPTIMIZATION_CFLAGS_RELEASE = (blank) 119 | # 120 | # PROJECT_OPTIMIZATION_CFLAGS_DEBUG flags are only applied to DEBUG targets. 121 | # 122 | # (default) PROJECT_OPTIMIZATION_CFLAGS_DEBUG = (blank) 123 | # 124 | # Note: Before adding PROJECT_OPTIMIZATION_CFLAGS, please note that the 125 | # PLATFORM_OPTIMIZATION_CFLAGS defined in your platform specific configuration 126 | # file will be applied by default and further optimization flags here may not 127 | # be needed. 128 | # 129 | # Note: Leave a leading space when adding list items with the += operator 130 | ################################################################################ 131 | # PROJECT_OPTIMIZATION_CFLAGS_RELEASE = 132 | # PROJECT_OPTIMIZATION_CFLAGS_DEBUG = 133 | 134 | ################################################################################ 135 | # PROJECT COMPILERS 136 | # Custom compilers can be set for CC and CXX 137 | # (default) PROJECT_CXX = (blank) 138 | # (default) PROJECT_CC = (blank) 139 | # Note: Leave a leading space when adding list items with the += operator 140 | ################################################################################ 141 | # PROJECT_CXX = 142 | # PROJECT_CC = 143 | -------------------------------------------------------------------------------- /example-chaining/example-chaining.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | archiveVersion 5 | 1 6 | classes 7 | 8 | objectVersion 9 | 46 10 | objects 11 | 12 | 911D0111E2A5211269A4812D 13 | 14 | explicitFileType 15 | sourcecode.c.h 16 | fileEncoding 17 | 30 18 | isa 19 | PBXFileReference 20 | name 21 | ofxSandLine.h 22 | path 23 | ../../../addons/ofxSandLine/src/ofxSandLine.h 24 | sourceTree 25 | SOURCE_ROOT 26 | 27 | 8883051E4ABA076E6F75555B 28 | 29 | children 30 | 31 | B1CFCD11058E3E0E9651BAE4 32 | 911D0111E2A5211269A4812D 33 | 34 | isa 35 | PBXGroup 36 | name 37 | src 38 | sourceTree 39 | <group> 40 | 41 | 22C6599D4FAAC22FBA3312FA 42 | 43 | children 44 | 45 | 8883051E4ABA076E6F75555B 46 | 47 | isa 48 | PBXGroup 49 | name 50 | ofxSandLine 51 | sourceTree 52 | <group> 53 | 54 | 68BA34B8B8751454346798E8 55 | 56 | fileRef 57 | B1CFCD11058E3E0E9651BAE4 58 | isa 59 | PBXBuildFile 60 | 61 | B1CFCD11058E3E0E9651BAE4 62 | 63 | explicitFileType 64 | sourcecode.cpp.cpp 65 | fileEncoding 66 | 30 67 | isa 68 | PBXFileReference 69 | name 70 | ofxSandLine.cpp 71 | path 72 | ../../../addons/ofxSandLine/src/ofxSandLine.cpp 73 | sourceTree 74 | SOURCE_ROOT 75 | 76 | 6948EE371B920CB800B5AC1A 77 | 78 | children 79 | 80 | isa 81 | PBXGroup 82 | name 83 | local_addons 84 | sourceTree 85 | <group> 86 | 87 | BB4B014C10F69532006C3DED 88 | 89 | children 90 | 91 | 22C6599D4FAAC22FBA3312FA 92 | 93 | isa 94 | PBXGroup 95 | name 96 | addons 97 | sourceTree 98 | <group> 99 | 100 | E4328143138ABC890047C5CB 101 | 102 | isa 103 | PBXFileReference 104 | lastKnownFileType 105 | wrapper.pb-project 106 | name 107 | openFrameworksLib.xcodeproj 108 | path 109 | ../../../libs/openFrameworksCompiled/project/osx/openFrameworksLib.xcodeproj 110 | sourceTree 111 | SOURCE_ROOT 112 | 113 | E4328144138ABC890047C5CB 114 | 115 | children 116 | 117 | E4328148138ABC890047C5CB 118 | 119 | isa 120 | PBXGroup 121 | name 122 | Products 123 | sourceTree 124 | <group> 125 | 126 | E4328147138ABC890047C5CB 127 | 128 | containerPortal 129 | E4328143138ABC890047C5CB 130 | isa 131 | PBXContainerItemProxy 132 | proxyType 133 | 2 134 | remoteGlobalIDString 135 | E4B27C1510CBEB8E00536013 136 | remoteInfo 137 | openFrameworks 138 | 139 | E4328148138ABC890047C5CB 140 | 141 | fileType 142 | archive.ar 143 | isa 144 | PBXReferenceProxy 145 | path 146 | openFrameworksDebug.a 147 | remoteRef 148 | E4328147138ABC890047C5CB 149 | sourceTree 150 | BUILT_PRODUCTS_DIR 151 | 152 | E4328149138ABC9F0047C5CB 153 | 154 | fileRef 155 | E4328148138ABC890047C5CB 156 | isa 157 | PBXBuildFile 158 | 159 | E4B69B4A0A3A1720003C02F2 160 | 161 | children 162 | 163 | E4B6FCAD0C3E899E008CF71C 164 | E4EB6923138AFD0F00A09F29 165 | E4B69E1C0A3A1BDC003C02F2 166 | E4EEC9E9138DF44700A80321 167 | BB4B014C10F69532006C3DED 168 | 6948EE371B920CB800B5AC1A 169 | E4B69B5B0A3A1756003C02F2 170 | 171 | isa 172 | PBXGroup 173 | sourceTree 174 | <group> 175 | 176 | E4B69B4C0A3A1720003C02F2 177 | 178 | attributes 179 | 180 | LastUpgradeCheck 181 | 0600 182 | 183 | buildConfigurationList 184 | E4B69B4D0A3A1720003C02F2 185 | compatibilityVersion 186 | Xcode 3.2 187 | developmentRegion 188 | English 189 | hasScannedForEncodings 190 | 0 191 | isa 192 | PBXProject 193 | knownRegions 194 | 195 | English 196 | Japanese 197 | French 198 | German 199 | 200 | mainGroup 201 | E4B69B4A0A3A1720003C02F2 202 | productRefGroup 203 | E4B69B4A0A3A1720003C02F2 204 | projectDirPath 205 | 206 | projectReferences 207 | 208 | 209 | ProductGroup 210 | E4328144138ABC890047C5CB 211 | ProjectRef 212 | E4328143138ABC890047C5CB 213 | 214 | 215 | projectRoot 216 | 217 | targets 218 | 219 | E4B69B5A0A3A1756003C02F2 220 | 221 | 222 | E4B69B4D0A3A1720003C02F2 223 | 224 | buildConfigurations 225 | 226 | E4B69B4E0A3A1720003C02F2 227 | E4B69B4F0A3A1720003C02F2 228 | 229 | defaultConfigurationIsVisible 230 | 0 231 | defaultConfigurationName 232 | Release 233 | isa 234 | XCConfigurationList 235 | 236 | E4B69B4E0A3A1720003C02F2 237 | 238 | baseConfigurationReference 239 | E4EB6923138AFD0F00A09F29 240 | buildSettings 241 | 242 | HEADER_SEARCH_PATHS 243 | 244 | $(OF_CORE_HEADERS) 245 | ../../../addons/ofxSandLine/src 246 | 247 | CONFIGURATION_BUILD_DIR 248 | $(SRCROOT)/bin/ 249 | COPY_PHASE_STRIP 250 | NO 251 | DEAD_CODE_STRIPPING 252 | YES 253 | GCC_AUTO_VECTORIZATION 254 | YES 255 | GCC_ENABLE_SSE3_EXTENSIONS 256 | YES 257 | GCC_ENABLE_SUPPLEMENTAL_SSE3_INSTRUCTIONS 258 | YES 259 | GCC_INLINES_ARE_PRIVATE_EXTERN 260 | NO 261 | GCC_OPTIMIZATION_LEVEL 262 | 0 263 | GCC_SYMBOLS_PRIVATE_EXTERN 264 | NO 265 | GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS 266 | YES 267 | GCC_WARN_ABOUT_INVALID_OFFSETOF_MACRO 268 | NO 269 | GCC_WARN_ALLOW_INCOMPLETE_PROTOCOL 270 | NO 271 | GCC_WARN_UNINITIALIZED_AUTOS 272 | NO 273 | GCC_WARN_UNUSED_VALUE 274 | NO 275 | GCC_WARN_UNUSED_VARIABLE 276 | NO 277 | MACOSX_DEPLOYMENT_TARGET 278 | 10.8 279 | ONLY_ACTIVE_ARCH 280 | YES 281 | OTHER_CPLUSPLUSFLAGS 282 | 283 | -D__MACOSX_CORE__ 284 | -mtune=native 285 | 286 | SDKROOT 287 | macosx 288 | 289 | isa 290 | XCBuildConfiguration 291 | name 292 | Debug 293 | 294 | E4B69B4F0A3A1720003C02F2 295 | 296 | baseConfigurationReference 297 | E4EB6923138AFD0F00A09F29 298 | buildSettings 299 | 300 | HEADER_SEARCH_PATHS 301 | 302 | $(OF_CORE_HEADERS) 303 | ../../../addons/ofxSandLine/src 304 | 305 | CONFIGURATION_BUILD_DIR 306 | $(SRCROOT)/bin/ 307 | COPY_PHASE_STRIP 308 | YES 309 | DEAD_CODE_STRIPPING 310 | YES 311 | GCC_AUTO_VECTORIZATION 312 | YES 313 | GCC_ENABLE_SSE3_EXTENSIONS 314 | YES 315 | GCC_ENABLE_SUPPLEMENTAL_SSE3_INSTRUCTIONS 316 | YES 317 | GCC_INLINES_ARE_PRIVATE_EXTERN 318 | NO 319 | GCC_OPTIMIZATION_LEVEL 320 | 3 321 | GCC_SYMBOLS_PRIVATE_EXTERN 322 | NO 323 | GCC_UNROLL_LOOPS 324 | YES 325 | GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS 326 | YES 327 | GCC_WARN_ABOUT_INVALID_OFFSETOF_MACRO 328 | NO 329 | GCC_WARN_ALLOW_INCOMPLETE_PROTOCOL 330 | NO 331 | GCC_WARN_UNINITIALIZED_AUTOS 332 | NO 333 | GCC_WARN_UNUSED_VALUE 334 | NO 335 | GCC_WARN_UNUSED_VARIABLE 336 | NO 337 | MACOSX_DEPLOYMENT_TARGET 338 | 10.8 339 | OTHER_CPLUSPLUSFLAGS 340 | 341 | -D__MACOSX_CORE__ 342 | -mtune=native 343 | 344 | SDKROOT 345 | macosx 346 | 347 | isa 348 | XCBuildConfiguration 349 | name 350 | Release 351 | 352 | E4B69B580A3A1756003C02F2 353 | 354 | buildActionMask 355 | 2147483647 356 | files 357 | 358 | E4B69E200A3A1BDC003C02F2 359 | E4B69E210A3A1BDC003C02F2 360 | 68BA34B8B8751454346798E8 361 | 362 | isa 363 | PBXSourcesBuildPhase 364 | runOnlyForDeploymentPostprocessing 365 | 0 366 | 367 | E4B69B590A3A1756003C02F2 368 | 369 | buildActionMask 370 | 2147483647 371 | files 372 | 373 | E4328149138ABC9F0047C5CB 374 | 375 | isa 376 | PBXFrameworksBuildPhase 377 | runOnlyForDeploymentPostprocessing 378 | 0 379 | 380 | E4B69B5A0A3A1756003C02F2 381 | 382 | buildConfigurationList 383 | E4B69B5F0A3A1757003C02F2 384 | buildPhases 385 | 386 | E4B69B580A3A1756003C02F2 387 | E4B69B590A3A1756003C02F2 388 | E4B6FFFD0C3F9AB9008CF71C 389 | E4C2427710CC5ABF004149E2 390 | 391 | buildRules 392 | 393 | dependencies 394 | 395 | E4EEB9AC138B136A00A80321 396 | 397 | isa 398 | PBXNativeTarget 399 | name 400 | example-chaining 401 | productName 402 | myOFApp 403 | productReference 404 | E4B69B5B0A3A1756003C02F2 405 | productType 406 | com.apple.product-type.application 407 | 408 | E4B69B5B0A3A1756003C02F2 409 | 410 | explicitFileType 411 | wrapper.application 412 | includeInIndex 413 | 0 414 | isa 415 | PBXFileReference 416 | path 417 | example-chainingDebug.app 418 | sourceTree 419 | BUILT_PRODUCTS_DIR 420 | 421 | E4B69B5F0A3A1757003C02F2 422 | 423 | buildConfigurations 424 | 425 | E4B69B600A3A1757003C02F2 426 | E4B69B610A3A1757003C02F2 427 | 428 | defaultConfigurationIsVisible 429 | 0 430 | defaultConfigurationName 431 | Release 432 | isa 433 | XCConfigurationList 434 | 435 | E4B69B600A3A1757003C02F2 436 | 437 | baseConfigurationReference 438 | E4EB6923138AFD0F00A09F29 439 | buildSettings 440 | 441 | HEADER_SEARCH_PATHS 442 | 443 | $(OF_CORE_HEADERS) 444 | ../../../addons/ofxSandLine/src 445 | 446 | COMBINE_HIDPI_IMAGES 447 | YES 448 | COPY_PHASE_STRIP 449 | NO 450 | FRAMEWORK_SEARCH_PATHS 451 | 452 | $(inherited) 453 | $(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1) 454 | 455 | FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 456 | "$(SRCROOT)/../../../libs/glut/lib/osx" 457 | GCC_DYNAMIC_NO_PIC 458 | NO 459 | GCC_GENERATE_DEBUGGING_SYMBOLS 460 | YES 461 | GCC_MODEL_TUNING 462 | NONE 463 | ICON 464 | $(ICON_NAME_DEBUG) 465 | ICON_FILE 466 | $(ICON_FILE_PATH)$(ICON) 467 | INFOPLIST_FILE 468 | openFrameworks-Info.plist 469 | INSTALL_PATH 470 | /Applications 471 | LIBRARY_SEARCH_PATHS 472 | $(inherited) 473 | PRODUCT_NAME 474 | $(TARGET_NAME)Debug 475 | WRAPPER_EXTENSION 476 | app 477 | 478 | isa 479 | XCBuildConfiguration 480 | name 481 | Debug 482 | 483 | E4B69B610A3A1757003C02F2 484 | 485 | baseConfigurationReference 486 | E4EB6923138AFD0F00A09F29 487 | buildSettings 488 | 489 | HEADER_SEARCH_PATHS 490 | 491 | $(OF_CORE_HEADERS) 492 | ../../../addons/ofxSandLine/src 493 | 494 | COMBINE_HIDPI_IMAGES 495 | YES 496 | COPY_PHASE_STRIP 497 | YES 498 | FRAMEWORK_SEARCH_PATHS 499 | 500 | $(inherited) 501 | $(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1) 502 | 503 | FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 504 | "$(SRCROOT)/../../../libs/glut/lib/osx" 505 | GCC_GENERATE_DEBUGGING_SYMBOLS 506 | YES 507 | GCC_MODEL_TUNING 508 | NONE 509 | ICON 510 | $(ICON_NAME_RELEASE) 511 | ICON_FILE 512 | $(ICON_FILE_PATH)$(ICON) 513 | INFOPLIST_FILE 514 | openFrameworks-Info.plist 515 | INSTALL_PATH 516 | /Applications 517 | LIBRARY_SEARCH_PATHS 518 | $(inherited) 519 | PRODUCT_NAME 520 | $(TARGET_NAME) 521 | WRAPPER_EXTENSION 522 | app 523 | baseConfigurationReference 524 | E4EB6923138AFD0F00A09F29 525 | 526 | isa 527 | XCBuildConfiguration 528 | name 529 | Release 530 | 531 | E4B69E1C0A3A1BDC003C02F2 532 | 533 | children 534 | 535 | E4B69E1D0A3A1BDC003C02F2 536 | E4B69E1E0A3A1BDC003C02F2 537 | E4B69E1F0A3A1BDC003C02F2 538 | 539 | isa 540 | PBXGroup 541 | path 542 | src 543 | sourceTree 544 | SOURCE_ROOT 545 | 546 | E4B69E1D0A3A1BDC003C02F2 547 | 548 | fileEncoding 549 | 30 550 | isa 551 | PBXFileReference 552 | lastKnownFileType 553 | sourcecode.cpp.cpp 554 | name 555 | main.cpp 556 | path 557 | src/main.cpp 558 | sourceTree 559 | SOURCE_ROOT 560 | 561 | E4B69E1E0A3A1BDC003C02F2 562 | 563 | explicitFileType 564 | sourcecode.cpp.cpp 565 | fileEncoding 566 | 30 567 | isa 568 | PBXFileReference 569 | name 570 | ofApp.cpp 571 | path 572 | src/ofApp.cpp 573 | sourceTree 574 | SOURCE_ROOT 575 | 576 | E4B69E1F0A3A1BDC003C02F2 577 | 578 | fileEncoding 579 | 30 580 | isa 581 | PBXFileReference 582 | lastKnownFileType 583 | sourcecode.c.h 584 | name 585 | ofApp.h 586 | path 587 | src/ofApp.h 588 | sourceTree 589 | SOURCE_ROOT 590 | 591 | E4B69E200A3A1BDC003C02F2 592 | 593 | fileRef 594 | E4B69E1D0A3A1BDC003C02F2 595 | isa 596 | PBXBuildFile 597 | 598 | E4B69E210A3A1BDC003C02F2 599 | 600 | fileRef 601 | E4B69E1E0A3A1BDC003C02F2 602 | isa 603 | PBXBuildFile 604 | 605 | E4B6FCAD0C3E899E008CF71C 606 | 607 | fileEncoding 608 | 30 609 | isa 610 | PBXFileReference 611 | lastKnownFileType 612 | text.plist.xml 613 | path 614 | openFrameworks-Info.plist 615 | sourceTree 616 | <group> 617 | 618 | E4B6FFFD0C3F9AB9008CF71C 619 | 620 | buildActionMask 621 | 2147483647 622 | files 623 | 624 | inputPaths 625 | 626 | isa 627 | PBXShellScriptBuildPhase 628 | outputPaths 629 | 630 | runOnlyForDeploymentPostprocessing 631 | 0 632 | shellPath 633 | /bin/sh 634 | shellScript 635 | mkdir -p "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Resources/" 636 | # Copy default icon file into App/Resources 637 | rsync -aved "$ICON_FILE" "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Resources/" 638 | # Copy libfmod and change install directory for fmod to run 639 | rsync -aved ../../../libs/fmodex/lib/osx/libfmodex.dylib "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Frameworks/"; 640 | install_name_tool -change @executable_path/libfmodex.dylib @executable_path/../Frameworks/libfmodex.dylib "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/MacOS/$PRODUCT_NAME"; 641 | # Copy GLUT framework (must remove for AppStore submissions) 642 | rsync -aved ../../../libs/glut/lib/osx/GLUT.framework "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Frameworks/" 643 | 644 | 645 | E4C2427710CC5ABF004149E2 646 | 647 | buildActionMask 648 | 2147483647 649 | dstPath 650 | 651 | dstSubfolderSpec 652 | 10 653 | files 654 | 655 | isa 656 | PBXCopyFilesBuildPhase 657 | runOnlyForDeploymentPostprocessing 658 | 0 659 | 660 | E4EB691F138AFCF100A09F29 661 | 662 | fileEncoding 663 | 4 664 | isa 665 | PBXFileReference 666 | lastKnownFileType 667 | text.xcconfig 668 | name 669 | CoreOF.xcconfig 670 | path 671 | ../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig 672 | sourceTree 673 | SOURCE_ROOT 674 | 675 | E4EB6923138AFD0F00A09F29 676 | 677 | fileEncoding 678 | 4 679 | isa 680 | PBXFileReference 681 | lastKnownFileType 682 | text.xcconfig 683 | path 684 | Project.xcconfig 685 | sourceTree 686 | <group> 687 | 688 | E4EEB9AB138B136A00A80321 689 | 690 | containerPortal 691 | E4328143138ABC890047C5CB 692 | isa 693 | PBXContainerItemProxy 694 | proxyType 695 | 1 696 | remoteGlobalIDString 697 | E4B27C1410CBEB8E00536013 698 | remoteInfo 699 | openFrameworks 700 | 701 | E4EEB9AC138B136A00A80321 702 | 703 | isa 704 | PBXTargetDependency 705 | name 706 | openFrameworks 707 | targetProxy 708 | E4EEB9AB138B136A00A80321 709 | 710 | E4EEC9E9138DF44700A80321 711 | 712 | children 713 | 714 | E4EB691F138AFCF100A09F29 715 | E4328143138ABC890047C5CB 716 | 717 | isa 718 | PBXGroup 719 | name 720 | openFrameworks 721 | sourceTree 722 | <group> 723 | 724 | 725 | rootObject 726 | E4B69B4C0A3A1720003C02F2 727 | 728 | 729 | -------------------------------------------------------------------------------- /example-chaining/example-chaining.xcodeproj/xcshareddata/xcschemes/example-chaining Debug.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 32 | 33 | 39 | 40 | 41 | 42 | 51 | 52 | 58 | 59 | 60 | 61 | 62 | 63 | 69 | 70 | 76 | 77 | 78 | 79 | 81 | 82 | 85 | 86 | 87 | -------------------------------------------------------------------------------- /example-chaining/example-chaining.xcodeproj/xcshareddata/xcschemes/example-chaining Release.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 32 | 33 | 39 | 40 | 41 | 42 | 51 | 52 | 58 | 59 | 60 | 61 | 62 | 63 | 69 | 70 | 76 | 77 | 78 | 79 | 81 | 82 | 85 | 86 | 87 | -------------------------------------------------------------------------------- /example-chaining/openFrameworks-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | cc.openFrameworks.ofapp 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | APPL 15 | CFBundleSignature 16 | ???? 17 | CFBundleVersion 18 | 1.0 19 | CFBundleIconFile 20 | ${ICON} 21 | 22 | 23 | -------------------------------------------------------------------------------- /example-chaining/src/main.cpp: -------------------------------------------------------------------------------- 1 | #include "ofMain.h" 2 | #include "ofApp.h" 3 | 4 | //======================================================================== 5 | int main( ){ 6 | ofSetupOpenGL(1024,768,OF_WINDOW); // <-------- setup the GL context 7 | 8 | // this kicks off the running of my app 9 | // can be OF_WINDOW or OF_FULLSCREEN 10 | // pass in width and height too: 11 | ofRunApp(new ofApp()); 12 | 13 | } 14 | -------------------------------------------------------------------------------- /example-chaining/src/ofApp.cpp: -------------------------------------------------------------------------------- 1 | #include "ofApp.h" 2 | 3 | //-------------------------------------------------------------- 4 | void ofApp::setup(){ 5 | 6 | ofSetBackgroundColor(0); 7 | 8 | int numLines = 4; 9 | 10 | for(int i = 0; i lines; 26 | 27 | }; 28 | -------------------------------------------------------------------------------- /example-frameBlendling/Makefile: -------------------------------------------------------------------------------- 1 | # Attempt to load a config.make file. 2 | # If none is found, project defaults in config.project.make will be used. 3 | ifneq ($(wildcard config.make),) 4 | include config.make 5 | endif 6 | 7 | # make sure the the OF_ROOT location is defined 8 | ifndef OF_ROOT 9 | OF_ROOT=$(realpath ../../..) 10 | endif 11 | 12 | # call the project makefile! 13 | include $(OF_ROOT)/libs/openFrameworksCompiled/project/makefileCommon/compile.project.mk 14 | -------------------------------------------------------------------------------- /example-frameBlendling/Project.xcconfig: -------------------------------------------------------------------------------- 1 | //THE PATH TO THE ROOT OF OUR OF PATH RELATIVE TO THIS PROJECT. 2 | //THIS NEEDS TO BE DEFINED BEFORE CoreOF.xcconfig IS INCLUDED 3 | OF_PATH = ../../.. 4 | 5 | //THIS HAS ALL THE HEADER AND LIBS FOR OF CORE 6 | #include "../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig" 7 | 8 | //ICONS - NEW IN 0072 9 | ICON_NAME_DEBUG = icon-debug.icns 10 | ICON_NAME_RELEASE = icon.icns 11 | ICON_FILE_PATH = $(OF_PATH)/libs/openFrameworksCompiled/project/osx/ 12 | 13 | //IF YOU WANT AN APP TO HAVE A CUSTOM ICON - PUT THEM IN YOUR DATA FOLDER AND CHANGE ICON_FILE_PATH to: 14 | //ICON_FILE_PATH = bin/data/ 15 | 16 | OTHER_LDFLAGS = $(OF_CORE_LIBS) $(OF_CORE_FRAMEWORKS) 17 | HEADER_SEARCH_PATHS = $(OF_CORE_HEADERS) 18 | -------------------------------------------------------------------------------- /example-frameBlendling/addons.make: -------------------------------------------------------------------------------- 1 | ofxSandLine 2 | -------------------------------------------------------------------------------- /example-frameBlendling/bin/data/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sourya-sen/ofxSandLine/88b0bfc1fab841697e54b63169ad7695db6d2d85/example-frameBlendling/bin/data/.gitkeep -------------------------------------------------------------------------------- /example-frameBlendling/config.make: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # CONFIGURE PROJECT MAKEFILE (optional) 3 | # This file is where we make project specific configurations. 4 | ################################################################################ 5 | 6 | ################################################################################ 7 | # OF ROOT 8 | # The location of your root openFrameworks installation 9 | # (default) OF_ROOT = ../../.. 10 | ################################################################################ 11 | # OF_ROOT = ../../.. 12 | 13 | ################################################################################ 14 | # PROJECT ROOT 15 | # The location of the project - a starting place for searching for files 16 | # (default) PROJECT_ROOT = . (this directory) 17 | # 18 | ################################################################################ 19 | # PROJECT_ROOT = . 20 | 21 | ################################################################################ 22 | # PROJECT SPECIFIC CHECKS 23 | # This is a project defined section to create internal makefile flags to 24 | # conditionally enable or disable the addition of various features within 25 | # this makefile. For instance, if you want to make changes based on whether 26 | # GTK is installed, one might test that here and create a variable to check. 27 | ################################################################################ 28 | # None 29 | 30 | ################################################################################ 31 | # PROJECT EXTERNAL SOURCE PATHS 32 | # These are fully qualified paths that are not within the PROJECT_ROOT folder. 33 | # Like source folders in the PROJECT_ROOT, these paths are subject to 34 | # exlclusion via the PROJECT_EXLCUSIONS list. 35 | # 36 | # (default) PROJECT_EXTERNAL_SOURCE_PATHS = (blank) 37 | # 38 | # Note: Leave a leading space when adding list items with the += operator 39 | ################################################################################ 40 | # PROJECT_EXTERNAL_SOURCE_PATHS = 41 | 42 | ################################################################################ 43 | # PROJECT EXCLUSIONS 44 | # These makefiles assume that all folders in your current project directory 45 | # and any listed in the PROJECT_EXTERNAL_SOURCH_PATHS are are valid locations 46 | # to look for source code. The any folders or files that match any of the 47 | # items in the PROJECT_EXCLUSIONS list below will be ignored. 48 | # 49 | # Each item in the PROJECT_EXCLUSIONS list will be treated as a complete 50 | # string unless teh user adds a wildcard (%) operator to match subdirectories. 51 | # GNU make only allows one wildcard for matching. The second wildcard (%) is 52 | # treated literally. 53 | # 54 | # (default) PROJECT_EXCLUSIONS = (blank) 55 | # 56 | # Will automatically exclude the following: 57 | # 58 | # $(PROJECT_ROOT)/bin% 59 | # $(PROJECT_ROOT)/obj% 60 | # $(PROJECT_ROOT)/%.xcodeproj 61 | # 62 | # Note: Leave a leading space when adding list items with the += operator 63 | ################################################################################ 64 | # PROJECT_EXCLUSIONS = 65 | 66 | ################################################################################ 67 | # PROJECT LINKER FLAGS 68 | # These flags will be sent to the linker when compiling the executable. 69 | # 70 | # (default) PROJECT_LDFLAGS = -Wl,-rpath=./libs 71 | # 72 | # Note: Leave a leading space when adding list items with the += operator 73 | ################################################################################ 74 | 75 | # Currently, shared libraries that are needed are copied to the 76 | # $(PROJECT_ROOT)/bin/libs directory. The following LDFLAGS tell the linker to 77 | # add a runtime path to search for those shared libraries, since they aren't 78 | # incorporated directly into the final executable application binary. 79 | # TODO: should this be a default setting? 80 | # PROJECT_LDFLAGS=-Wl,-rpath=./libs 81 | 82 | ################################################################################ 83 | # PROJECT DEFINES 84 | # Create a space-delimited list of DEFINES. The list will be converted into 85 | # CFLAGS with the "-D" flag later in the makefile. 86 | # 87 | # (default) PROJECT_DEFINES = (blank) 88 | # 89 | # Note: Leave a leading space when adding list items with the += operator 90 | ################################################################################ 91 | # PROJECT_DEFINES = 92 | 93 | ################################################################################ 94 | # PROJECT CFLAGS 95 | # This is a list of fully qualified CFLAGS required when compiling for this 96 | # project. These CFLAGS will be used IN ADDITION TO the PLATFORM_CFLAGS 97 | # defined in your platform specific core configuration files. These flags are 98 | # presented to the compiler BEFORE the PROJECT_OPTIMIZATION_CFLAGS below. 99 | # 100 | # (default) PROJECT_CFLAGS = (blank) 101 | # 102 | # Note: Before adding PROJECT_CFLAGS, note that the PLATFORM_CFLAGS defined in 103 | # your platform specific configuration file will be applied by default and 104 | # further flags here may not be needed. 105 | # 106 | # Note: Leave a leading space when adding list items with the += operator 107 | ################################################################################ 108 | # PROJECT_CFLAGS = 109 | 110 | ################################################################################ 111 | # PROJECT OPTIMIZATION CFLAGS 112 | # These are lists of CFLAGS that are target-specific. While any flags could 113 | # be conditionally added, they are usually limited to optimization flags. 114 | # These flags are added BEFORE the PROJECT_CFLAGS. 115 | # 116 | # PROJECT_OPTIMIZATION_CFLAGS_RELEASE flags are only applied to RELEASE targets. 117 | # 118 | # (default) PROJECT_OPTIMIZATION_CFLAGS_RELEASE = (blank) 119 | # 120 | # PROJECT_OPTIMIZATION_CFLAGS_DEBUG flags are only applied to DEBUG targets. 121 | # 122 | # (default) PROJECT_OPTIMIZATION_CFLAGS_DEBUG = (blank) 123 | # 124 | # Note: Before adding PROJECT_OPTIMIZATION_CFLAGS, please note that the 125 | # PLATFORM_OPTIMIZATION_CFLAGS defined in your platform specific configuration 126 | # file will be applied by default and further optimization flags here may not 127 | # be needed. 128 | # 129 | # Note: Leave a leading space when adding list items with the += operator 130 | ################################################################################ 131 | # PROJECT_OPTIMIZATION_CFLAGS_RELEASE = 132 | # PROJECT_OPTIMIZATION_CFLAGS_DEBUG = 133 | 134 | ################################################################################ 135 | # PROJECT COMPILERS 136 | # Custom compilers can be set for CC and CXX 137 | # (default) PROJECT_CXX = (blank) 138 | # (default) PROJECT_CC = (blank) 139 | # Note: Leave a leading space when adding list items with the += operator 140 | ################################################################################ 141 | # PROJECT_CXX = 142 | # PROJECT_CC = 143 | -------------------------------------------------------------------------------- /example-frameBlendling/example-frameBlendling.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | archiveVersion 5 | 1 6 | classes 7 | 8 | objectVersion 9 | 46 10 | objects 11 | 12 | 911D0111E2A5211269A4812D 13 | 14 | explicitFileType 15 | sourcecode.c.h 16 | fileEncoding 17 | 30 18 | isa 19 | PBXFileReference 20 | name 21 | ofxSandLine.h 22 | path 23 | ../../../addons/ofxSandLine/src/ofxSandLine.h 24 | sourceTree 25 | SOURCE_ROOT 26 | 27 | 8883051E4ABA076E6F75555B 28 | 29 | children 30 | 31 | B1CFCD11058E3E0E9651BAE4 32 | 911D0111E2A5211269A4812D 33 | 34 | isa 35 | PBXGroup 36 | name 37 | src 38 | sourceTree 39 | <group> 40 | 41 | 22C6599D4FAAC22FBA3312FA 42 | 43 | children 44 | 45 | 8883051E4ABA076E6F75555B 46 | 47 | isa 48 | PBXGroup 49 | name 50 | ofxSandLine 51 | sourceTree 52 | <group> 53 | 54 | 68BA34B8B8751454346798E8 55 | 56 | fileRef 57 | B1CFCD11058E3E0E9651BAE4 58 | isa 59 | PBXBuildFile 60 | 61 | B1CFCD11058E3E0E9651BAE4 62 | 63 | explicitFileType 64 | sourcecode.cpp.cpp 65 | fileEncoding 66 | 30 67 | isa 68 | PBXFileReference 69 | name 70 | ofxSandLine.cpp 71 | path 72 | ../../../addons/ofxSandLine/src/ofxSandLine.cpp 73 | sourceTree 74 | SOURCE_ROOT 75 | 76 | 6948EE371B920CB800B5AC1A 77 | 78 | children 79 | 80 | isa 81 | PBXGroup 82 | name 83 | local_addons 84 | sourceTree 85 | <group> 86 | 87 | BB4B014C10F69532006C3DED 88 | 89 | children 90 | 91 | 22C6599D4FAAC22FBA3312FA 92 | 93 | isa 94 | PBXGroup 95 | name 96 | addons 97 | sourceTree 98 | <group> 99 | 100 | E4328143138ABC890047C5CB 101 | 102 | isa 103 | PBXFileReference 104 | lastKnownFileType 105 | wrapper.pb-project 106 | name 107 | openFrameworksLib.xcodeproj 108 | path 109 | ../../../libs/openFrameworksCompiled/project/osx/openFrameworksLib.xcodeproj 110 | sourceTree 111 | SOURCE_ROOT 112 | 113 | E4328144138ABC890047C5CB 114 | 115 | children 116 | 117 | E4328148138ABC890047C5CB 118 | 119 | isa 120 | PBXGroup 121 | name 122 | Products 123 | sourceTree 124 | <group> 125 | 126 | E4328147138ABC890047C5CB 127 | 128 | containerPortal 129 | E4328143138ABC890047C5CB 130 | isa 131 | PBXContainerItemProxy 132 | proxyType 133 | 2 134 | remoteGlobalIDString 135 | E4B27C1510CBEB8E00536013 136 | remoteInfo 137 | openFrameworks 138 | 139 | E4328148138ABC890047C5CB 140 | 141 | fileType 142 | archive.ar 143 | isa 144 | PBXReferenceProxy 145 | path 146 | openFrameworksDebug.a 147 | remoteRef 148 | E4328147138ABC890047C5CB 149 | sourceTree 150 | BUILT_PRODUCTS_DIR 151 | 152 | E4328149138ABC9F0047C5CB 153 | 154 | fileRef 155 | E4328148138ABC890047C5CB 156 | isa 157 | PBXBuildFile 158 | 159 | E4B69B4A0A3A1720003C02F2 160 | 161 | children 162 | 163 | E4B6FCAD0C3E899E008CF71C 164 | E4EB6923138AFD0F00A09F29 165 | E4B69E1C0A3A1BDC003C02F2 166 | E4EEC9E9138DF44700A80321 167 | BB4B014C10F69532006C3DED 168 | 6948EE371B920CB800B5AC1A 169 | E4B69B5B0A3A1756003C02F2 170 | 171 | isa 172 | PBXGroup 173 | sourceTree 174 | <group> 175 | 176 | E4B69B4C0A3A1720003C02F2 177 | 178 | attributes 179 | 180 | LastUpgradeCheck 181 | 0600 182 | 183 | buildConfigurationList 184 | E4B69B4D0A3A1720003C02F2 185 | compatibilityVersion 186 | Xcode 3.2 187 | developmentRegion 188 | English 189 | hasScannedForEncodings 190 | 0 191 | isa 192 | PBXProject 193 | knownRegions 194 | 195 | English 196 | Japanese 197 | French 198 | German 199 | 200 | mainGroup 201 | E4B69B4A0A3A1720003C02F2 202 | productRefGroup 203 | E4B69B4A0A3A1720003C02F2 204 | projectDirPath 205 | 206 | projectReferences 207 | 208 | 209 | ProductGroup 210 | E4328144138ABC890047C5CB 211 | ProjectRef 212 | E4328143138ABC890047C5CB 213 | 214 | 215 | projectRoot 216 | 217 | targets 218 | 219 | E4B69B5A0A3A1756003C02F2 220 | 221 | 222 | E4B69B4D0A3A1720003C02F2 223 | 224 | buildConfigurations 225 | 226 | E4B69B4E0A3A1720003C02F2 227 | E4B69B4F0A3A1720003C02F2 228 | 229 | defaultConfigurationIsVisible 230 | 0 231 | defaultConfigurationName 232 | Release 233 | isa 234 | XCConfigurationList 235 | 236 | E4B69B4E0A3A1720003C02F2 237 | 238 | baseConfigurationReference 239 | E4EB6923138AFD0F00A09F29 240 | buildSettings 241 | 242 | HEADER_SEARCH_PATHS 243 | 244 | $(OF_CORE_HEADERS) 245 | ../../../addons/ofxSandLine/src 246 | 247 | CONFIGURATION_BUILD_DIR 248 | $(SRCROOT)/bin/ 249 | COPY_PHASE_STRIP 250 | NO 251 | DEAD_CODE_STRIPPING 252 | YES 253 | GCC_AUTO_VECTORIZATION 254 | YES 255 | GCC_ENABLE_SSE3_EXTENSIONS 256 | YES 257 | GCC_ENABLE_SUPPLEMENTAL_SSE3_INSTRUCTIONS 258 | YES 259 | GCC_INLINES_ARE_PRIVATE_EXTERN 260 | NO 261 | GCC_OPTIMIZATION_LEVEL 262 | 0 263 | GCC_SYMBOLS_PRIVATE_EXTERN 264 | NO 265 | GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS 266 | YES 267 | GCC_WARN_ABOUT_INVALID_OFFSETOF_MACRO 268 | NO 269 | GCC_WARN_ALLOW_INCOMPLETE_PROTOCOL 270 | NO 271 | GCC_WARN_UNINITIALIZED_AUTOS 272 | NO 273 | GCC_WARN_UNUSED_VALUE 274 | NO 275 | GCC_WARN_UNUSED_VARIABLE 276 | NO 277 | MACOSX_DEPLOYMENT_TARGET 278 | 10.8 279 | ONLY_ACTIVE_ARCH 280 | YES 281 | OTHER_CPLUSPLUSFLAGS 282 | 283 | -D__MACOSX_CORE__ 284 | -mtune=native 285 | 286 | SDKROOT 287 | macosx 288 | 289 | isa 290 | XCBuildConfiguration 291 | name 292 | Debug 293 | 294 | E4B69B4F0A3A1720003C02F2 295 | 296 | baseConfigurationReference 297 | E4EB6923138AFD0F00A09F29 298 | buildSettings 299 | 300 | HEADER_SEARCH_PATHS 301 | 302 | $(OF_CORE_HEADERS) 303 | ../../../addons/ofxSandLine/src 304 | 305 | CONFIGURATION_BUILD_DIR 306 | $(SRCROOT)/bin/ 307 | COPY_PHASE_STRIP 308 | YES 309 | DEAD_CODE_STRIPPING 310 | YES 311 | GCC_AUTO_VECTORIZATION 312 | YES 313 | GCC_ENABLE_SSE3_EXTENSIONS 314 | YES 315 | GCC_ENABLE_SUPPLEMENTAL_SSE3_INSTRUCTIONS 316 | YES 317 | GCC_INLINES_ARE_PRIVATE_EXTERN 318 | NO 319 | GCC_OPTIMIZATION_LEVEL 320 | 3 321 | GCC_SYMBOLS_PRIVATE_EXTERN 322 | NO 323 | GCC_UNROLL_LOOPS 324 | YES 325 | GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS 326 | YES 327 | GCC_WARN_ABOUT_INVALID_OFFSETOF_MACRO 328 | NO 329 | GCC_WARN_ALLOW_INCOMPLETE_PROTOCOL 330 | NO 331 | GCC_WARN_UNINITIALIZED_AUTOS 332 | NO 333 | GCC_WARN_UNUSED_VALUE 334 | NO 335 | GCC_WARN_UNUSED_VARIABLE 336 | NO 337 | MACOSX_DEPLOYMENT_TARGET 338 | 10.8 339 | OTHER_CPLUSPLUSFLAGS 340 | 341 | -D__MACOSX_CORE__ 342 | -mtune=native 343 | 344 | SDKROOT 345 | macosx 346 | 347 | isa 348 | XCBuildConfiguration 349 | name 350 | Release 351 | 352 | E4B69B580A3A1756003C02F2 353 | 354 | buildActionMask 355 | 2147483647 356 | files 357 | 358 | E4B69E200A3A1BDC003C02F2 359 | E4B69E210A3A1BDC003C02F2 360 | 68BA34B8B8751454346798E8 361 | 362 | isa 363 | PBXSourcesBuildPhase 364 | runOnlyForDeploymentPostprocessing 365 | 0 366 | 367 | E4B69B590A3A1756003C02F2 368 | 369 | buildActionMask 370 | 2147483647 371 | files 372 | 373 | E4328149138ABC9F0047C5CB 374 | 375 | isa 376 | PBXFrameworksBuildPhase 377 | runOnlyForDeploymentPostprocessing 378 | 0 379 | 380 | E4B69B5A0A3A1756003C02F2 381 | 382 | buildConfigurationList 383 | E4B69B5F0A3A1757003C02F2 384 | buildPhases 385 | 386 | E4B69B580A3A1756003C02F2 387 | E4B69B590A3A1756003C02F2 388 | E4B6FFFD0C3F9AB9008CF71C 389 | E4C2427710CC5ABF004149E2 390 | 391 | buildRules 392 | 393 | dependencies 394 | 395 | E4EEB9AC138B136A00A80321 396 | 397 | isa 398 | PBXNativeTarget 399 | name 400 | example-frameBlendling 401 | productName 402 | myOFApp 403 | productReference 404 | E4B69B5B0A3A1756003C02F2 405 | productType 406 | com.apple.product-type.application 407 | 408 | E4B69B5B0A3A1756003C02F2 409 | 410 | explicitFileType 411 | wrapper.application 412 | includeInIndex 413 | 0 414 | isa 415 | PBXFileReference 416 | path 417 | example-frameBlendlingDebug.app 418 | sourceTree 419 | BUILT_PRODUCTS_DIR 420 | 421 | E4B69B5F0A3A1757003C02F2 422 | 423 | buildConfigurations 424 | 425 | E4B69B600A3A1757003C02F2 426 | E4B69B610A3A1757003C02F2 427 | 428 | defaultConfigurationIsVisible 429 | 0 430 | defaultConfigurationName 431 | Release 432 | isa 433 | XCConfigurationList 434 | 435 | E4B69B600A3A1757003C02F2 436 | 437 | baseConfigurationReference 438 | E4EB6923138AFD0F00A09F29 439 | buildSettings 440 | 441 | HEADER_SEARCH_PATHS 442 | 443 | $(OF_CORE_HEADERS) 444 | ../../../addons/ofxSandLine/src 445 | 446 | COMBINE_HIDPI_IMAGES 447 | YES 448 | COPY_PHASE_STRIP 449 | NO 450 | FRAMEWORK_SEARCH_PATHS 451 | 452 | $(inherited) 453 | $(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1) 454 | 455 | FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 456 | "$(SRCROOT)/../../../libs/glut/lib/osx" 457 | GCC_DYNAMIC_NO_PIC 458 | NO 459 | GCC_GENERATE_DEBUGGING_SYMBOLS 460 | YES 461 | GCC_MODEL_TUNING 462 | NONE 463 | ICON 464 | $(ICON_NAME_DEBUG) 465 | ICON_FILE 466 | $(ICON_FILE_PATH)$(ICON) 467 | INFOPLIST_FILE 468 | openFrameworks-Info.plist 469 | INSTALL_PATH 470 | /Applications 471 | LIBRARY_SEARCH_PATHS 472 | $(inherited) 473 | PRODUCT_NAME 474 | $(TARGET_NAME)Debug 475 | WRAPPER_EXTENSION 476 | app 477 | 478 | isa 479 | XCBuildConfiguration 480 | name 481 | Debug 482 | 483 | E4B69B610A3A1757003C02F2 484 | 485 | baseConfigurationReference 486 | E4EB6923138AFD0F00A09F29 487 | buildSettings 488 | 489 | HEADER_SEARCH_PATHS 490 | 491 | $(OF_CORE_HEADERS) 492 | ../../../addons/ofxSandLine/src 493 | 494 | COMBINE_HIDPI_IMAGES 495 | YES 496 | COPY_PHASE_STRIP 497 | YES 498 | FRAMEWORK_SEARCH_PATHS 499 | 500 | $(inherited) 501 | $(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1) 502 | 503 | FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 504 | "$(SRCROOT)/../../../libs/glut/lib/osx" 505 | GCC_GENERATE_DEBUGGING_SYMBOLS 506 | YES 507 | GCC_MODEL_TUNING 508 | NONE 509 | ICON 510 | $(ICON_NAME_RELEASE) 511 | ICON_FILE 512 | $(ICON_FILE_PATH)$(ICON) 513 | INFOPLIST_FILE 514 | openFrameworks-Info.plist 515 | INSTALL_PATH 516 | /Applications 517 | LIBRARY_SEARCH_PATHS 518 | $(inherited) 519 | PRODUCT_NAME 520 | $(TARGET_NAME) 521 | WRAPPER_EXTENSION 522 | app 523 | baseConfigurationReference 524 | E4EB6923138AFD0F00A09F29 525 | 526 | isa 527 | XCBuildConfiguration 528 | name 529 | Release 530 | 531 | E4B69E1C0A3A1BDC003C02F2 532 | 533 | children 534 | 535 | E4B69E1D0A3A1BDC003C02F2 536 | E4B69E1E0A3A1BDC003C02F2 537 | E4B69E1F0A3A1BDC003C02F2 538 | 539 | isa 540 | PBXGroup 541 | path 542 | src 543 | sourceTree 544 | SOURCE_ROOT 545 | 546 | E4B69E1D0A3A1BDC003C02F2 547 | 548 | fileEncoding 549 | 30 550 | isa 551 | PBXFileReference 552 | lastKnownFileType 553 | sourcecode.cpp.cpp 554 | name 555 | main.cpp 556 | path 557 | src/main.cpp 558 | sourceTree 559 | SOURCE_ROOT 560 | 561 | E4B69E1E0A3A1BDC003C02F2 562 | 563 | explicitFileType 564 | sourcecode.cpp.cpp 565 | fileEncoding 566 | 30 567 | isa 568 | PBXFileReference 569 | name 570 | ofApp.cpp 571 | path 572 | src/ofApp.cpp 573 | sourceTree 574 | SOURCE_ROOT 575 | 576 | E4B69E1F0A3A1BDC003C02F2 577 | 578 | fileEncoding 579 | 30 580 | isa 581 | PBXFileReference 582 | lastKnownFileType 583 | sourcecode.c.h 584 | name 585 | ofApp.h 586 | path 587 | src/ofApp.h 588 | sourceTree 589 | SOURCE_ROOT 590 | 591 | E4B69E200A3A1BDC003C02F2 592 | 593 | fileRef 594 | E4B69E1D0A3A1BDC003C02F2 595 | isa 596 | PBXBuildFile 597 | 598 | E4B69E210A3A1BDC003C02F2 599 | 600 | fileRef 601 | E4B69E1E0A3A1BDC003C02F2 602 | isa 603 | PBXBuildFile 604 | 605 | E4B6FCAD0C3E899E008CF71C 606 | 607 | fileEncoding 608 | 30 609 | isa 610 | PBXFileReference 611 | lastKnownFileType 612 | text.plist.xml 613 | path 614 | openFrameworks-Info.plist 615 | sourceTree 616 | <group> 617 | 618 | E4B6FFFD0C3F9AB9008CF71C 619 | 620 | buildActionMask 621 | 2147483647 622 | files 623 | 624 | inputPaths 625 | 626 | isa 627 | PBXShellScriptBuildPhase 628 | outputPaths 629 | 630 | runOnlyForDeploymentPostprocessing 631 | 0 632 | shellPath 633 | /bin/sh 634 | shellScript 635 | mkdir -p "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Resources/" 636 | # Copy default icon file into App/Resources 637 | rsync -aved "$ICON_FILE" "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Resources/" 638 | # Copy libfmod and change install directory for fmod to run 639 | rsync -aved ../../../libs/fmodex/lib/osx/libfmodex.dylib "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Frameworks/"; 640 | install_name_tool -change @executable_path/libfmodex.dylib @executable_path/../Frameworks/libfmodex.dylib "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/MacOS/$PRODUCT_NAME"; 641 | # Copy GLUT framework (must remove for AppStore submissions) 642 | rsync -aved ../../../libs/glut/lib/osx/GLUT.framework "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Frameworks/" 643 | 644 | 645 | E4C2427710CC5ABF004149E2 646 | 647 | buildActionMask 648 | 2147483647 649 | dstPath 650 | 651 | dstSubfolderSpec 652 | 10 653 | files 654 | 655 | isa 656 | PBXCopyFilesBuildPhase 657 | runOnlyForDeploymentPostprocessing 658 | 0 659 | 660 | E4EB691F138AFCF100A09F29 661 | 662 | fileEncoding 663 | 4 664 | isa 665 | PBXFileReference 666 | lastKnownFileType 667 | text.xcconfig 668 | name 669 | CoreOF.xcconfig 670 | path 671 | ../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig 672 | sourceTree 673 | SOURCE_ROOT 674 | 675 | E4EB6923138AFD0F00A09F29 676 | 677 | fileEncoding 678 | 4 679 | isa 680 | PBXFileReference 681 | lastKnownFileType 682 | text.xcconfig 683 | path 684 | Project.xcconfig 685 | sourceTree 686 | <group> 687 | 688 | E4EEB9AB138B136A00A80321 689 | 690 | containerPortal 691 | E4328143138ABC890047C5CB 692 | isa 693 | PBXContainerItemProxy 694 | proxyType 695 | 1 696 | remoteGlobalIDString 697 | E4B27C1410CBEB8E00536013 698 | remoteInfo 699 | openFrameworks 700 | 701 | E4EEB9AC138B136A00A80321 702 | 703 | isa 704 | PBXTargetDependency 705 | name 706 | openFrameworks 707 | targetProxy 708 | E4EEB9AB138B136A00A80321 709 | 710 | E4EEC9E9138DF44700A80321 711 | 712 | children 713 | 714 | E4EB691F138AFCF100A09F29 715 | E4328143138ABC890047C5CB 716 | 717 | isa 718 | PBXGroup 719 | name 720 | openFrameworks 721 | sourceTree 722 | <group> 723 | 724 | 725 | rootObject 726 | E4B69B4C0A3A1720003C02F2 727 | 728 | 729 | -------------------------------------------------------------------------------- /example-frameBlendling/example-frameBlendling.xcodeproj/xcshareddata/xcschemes/example-frameBlendling Debug.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 32 | 33 | 39 | 40 | 41 | 42 | 51 | 52 | 58 | 59 | 60 | 61 | 62 | 63 | 69 | 70 | 76 | 77 | 78 | 79 | 81 | 82 | 85 | 86 | 87 | -------------------------------------------------------------------------------- /example-frameBlendling/example-frameBlendling.xcodeproj/xcshareddata/xcschemes/example-frameBlendling Release.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 32 | 33 | 39 | 40 | 41 | 42 | 51 | 52 | 58 | 59 | 60 | 61 | 62 | 63 | 69 | 70 | 76 | 77 | 78 | 79 | 81 | 82 | 85 | 86 | 87 | -------------------------------------------------------------------------------- /example-frameBlendling/openFrameworks-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | cc.openFrameworks.ofapp 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | APPL 15 | CFBundleSignature 16 | ???? 17 | CFBundleVersion 18 | 1.0 19 | CFBundleIconFile 20 | ${ICON} 21 | 22 | 23 | -------------------------------------------------------------------------------- /example-frameBlendling/src/main.cpp: -------------------------------------------------------------------------------- 1 | #include "ofMain.h" 2 | #include "ofApp.h" 3 | 4 | //======================================================================== 5 | int main( ){ 6 | ofSetupOpenGL(1024,768,OF_WINDOW); // <-------- setup the GL context 7 | 8 | // this kicks off the running of my app 9 | // can be OF_WINDOW or OF_FULLSCREEN 10 | // pass in width and height too: 11 | ofRunApp(new ofApp()); 12 | 13 | } 14 | -------------------------------------------------------------------------------- /example-frameBlendling/src/ofApp.cpp: -------------------------------------------------------------------------------- 1 | #include "ofApp.h" 2 | 3 | //-------------------------------------------------------------- 4 | void ofApp::setup(){ 5 | 6 | //this example uses disabling the auto background refresh, ofcourse 7 | //you can also use FBO blending. 8 | 9 | ofSetFrameRate(60); 10 | ofSetBackgroundColor(0); 11 | ofSetBackgroundAuto(false); 12 | 13 | //check the other example for initiation, usage and documentation. 14 | 15 | ofPoint start(0, ofGetHeight()/2); 16 | ofPoint end(ofGetWidth(), ofGetHeight()/2); 17 | ofPoint control1(ofGetWidth()/3, ofGetHeight()/3); 18 | ofPoint control2(ofGetWidth() - ofGetWidth()/3, ofGetHeight() - ofGetHeight()/3); 19 | 20 | spline = ofxSandLine(start, control1, control2, end); 21 | spline.setOffset(7); 22 | 23 | } 24 | 25 | //-------------------------------------------------------------- 26 | void ofApp::update(){ 27 | 28 | } 29 | 30 | //-------------------------------------------------------------- 31 | void ofApp::draw(){ 32 | 33 | spline.draw(1000); 34 | ofDrawBitmapStringHighlight("press SPACE to clear screen", 15, 15); 35 | 36 | } 37 | 38 | //-------------------------------------------------------------- 39 | void ofApp::keyPressed(int key){ 40 | 41 | } 42 | 43 | //-------------------------------------------------------------- 44 | void ofApp::keyReleased(int key){ 45 | 46 | if(key == ' '){ 47 | ofClear(0); 48 | } 49 | 50 | } 51 | 52 | //-------------------------------------------------------------- 53 | void ofApp::mouseMoved(int x, int y ){ 54 | 55 | } 56 | 57 | //-------------------------------------------------------------- 58 | void ofApp::mouseDragged(int x, int y, int button){ 59 | 60 | } 61 | 62 | //-------------------------------------------------------------- 63 | void ofApp::mousePressed(int x, int y, int button){ 64 | 65 | } 66 | 67 | //-------------------------------------------------------------- 68 | void ofApp::mouseReleased(int x, int y, int button){ 69 | 70 | } 71 | 72 | //-------------------------------------------------------------- 73 | void ofApp::mouseEntered(int x, int y){ 74 | 75 | } 76 | 77 | //-------------------------------------------------------------- 78 | void ofApp::mouseExited(int x, int y){ 79 | 80 | } 81 | 82 | //-------------------------------------------------------------- 83 | void ofApp::windowResized(int w, int h){ 84 | 85 | } 86 | 87 | //-------------------------------------------------------------- 88 | void ofApp::gotMessage(ofMessage msg){ 89 | 90 | } 91 | 92 | //-------------------------------------------------------------- 93 | void ofApp::dragEvent(ofDragInfo dragInfo){ 94 | 95 | } 96 | -------------------------------------------------------------------------------- /example-frameBlendling/src/ofApp.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "ofMain.h" 4 | #include "ofxSandLine.h" 5 | 6 | class ofApp : public ofBaseApp{ 7 | 8 | public: 9 | void setup(); 10 | void update(); 11 | void draw(); 12 | 13 | void keyPressed(int key); 14 | void keyReleased(int key); 15 | void mouseMoved(int x, int y ); 16 | void mouseDragged(int x, int y, int button); 17 | void mousePressed(int x, int y, int button); 18 | void mouseReleased(int x, int y, int button); 19 | void mouseEntered(int x, int y); 20 | void mouseExited(int x, int y); 21 | void windowResized(int w, int h); 22 | void dragEvent(ofDragInfo dragInfo); 23 | void gotMessage(ofMessage msg); 24 | 25 | ofxSandLine spline; 26 | 27 | }; 28 | -------------------------------------------------------------------------------- /example-simple-documentation/Makefile: -------------------------------------------------------------------------------- 1 | # Attempt to load a config.make file. 2 | # If none is found, project defaults in config.project.make will be used. 3 | ifneq ($(wildcard config.make),) 4 | include config.make 5 | endif 6 | 7 | # make sure the the OF_ROOT location is defined 8 | ifndef OF_ROOT 9 | OF_ROOT=$(realpath ../../..) 10 | endif 11 | 12 | # call the project makefile! 13 | include $(OF_ROOT)/libs/openFrameworksCompiled/project/makefileCommon/compile.project.mk 14 | -------------------------------------------------------------------------------- /example-simple-documentation/Project.xcconfig: -------------------------------------------------------------------------------- 1 | //THE PATH TO THE ROOT OF OUR OF PATH RELATIVE TO THIS PROJECT. 2 | //THIS NEEDS TO BE DEFINED BEFORE CoreOF.xcconfig IS INCLUDED 3 | OF_PATH = ../../.. 4 | 5 | //THIS HAS ALL THE HEADER AND LIBS FOR OF CORE 6 | #include "../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig" 7 | 8 | //ICONS - NEW IN 0072 9 | ICON_NAME_DEBUG = icon-debug.icns 10 | ICON_NAME_RELEASE = icon.icns 11 | ICON_FILE_PATH = $(OF_PATH)/libs/openFrameworksCompiled/project/osx/ 12 | 13 | //IF YOU WANT AN APP TO HAVE A CUSTOM ICON - PUT THEM IN YOUR DATA FOLDER AND CHANGE ICON_FILE_PATH to: 14 | //ICON_FILE_PATH = bin/data/ 15 | 16 | OTHER_LDFLAGS = $(OF_CORE_LIBS) $(OF_CORE_FRAMEWORKS) 17 | HEADER_SEARCH_PATHS = $(OF_CORE_HEADERS) 18 | -------------------------------------------------------------------------------- /example-simple-documentation/addons.make: -------------------------------------------------------------------------------- 1 | ofxSandLine 2 | -------------------------------------------------------------------------------- /example-simple-documentation/bin/data/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sourya-sen/ofxSandLine/88b0bfc1fab841697e54b63169ad7695db6d2d85/example-simple-documentation/bin/data/.gitkeep -------------------------------------------------------------------------------- /example-simple-documentation/config.make: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # CONFIGURE PROJECT MAKEFILE (optional) 3 | # This file is where we make project specific configurations. 4 | ################################################################################ 5 | 6 | ################################################################################ 7 | # OF ROOT 8 | # The location of your root openFrameworks installation 9 | # (default) OF_ROOT = ../../.. 10 | ################################################################################ 11 | # OF_ROOT = ../../.. 12 | 13 | ################################################################################ 14 | # PROJECT ROOT 15 | # The location of the project - a starting place for searching for files 16 | # (default) PROJECT_ROOT = . (this directory) 17 | # 18 | ################################################################################ 19 | # PROJECT_ROOT = . 20 | 21 | ################################################################################ 22 | # PROJECT SPECIFIC CHECKS 23 | # This is a project defined section to create internal makefile flags to 24 | # conditionally enable or disable the addition of various features within 25 | # this makefile. For instance, if you want to make changes based on whether 26 | # GTK is installed, one might test that here and create a variable to check. 27 | ################################################################################ 28 | # None 29 | 30 | ################################################################################ 31 | # PROJECT EXTERNAL SOURCE PATHS 32 | # These are fully qualified paths that are not within the PROJECT_ROOT folder. 33 | # Like source folders in the PROJECT_ROOT, these paths are subject to 34 | # exlclusion via the PROJECT_EXLCUSIONS list. 35 | # 36 | # (default) PROJECT_EXTERNAL_SOURCE_PATHS = (blank) 37 | # 38 | # Note: Leave a leading space when adding list items with the += operator 39 | ################################################################################ 40 | # PROJECT_EXTERNAL_SOURCE_PATHS = 41 | 42 | ################################################################################ 43 | # PROJECT EXCLUSIONS 44 | # These makefiles assume that all folders in your current project directory 45 | # and any listed in the PROJECT_EXTERNAL_SOURCH_PATHS are are valid locations 46 | # to look for source code. The any folders or files that match any of the 47 | # items in the PROJECT_EXCLUSIONS list below will be ignored. 48 | # 49 | # Each item in the PROJECT_EXCLUSIONS list will be treated as a complete 50 | # string unless teh user adds a wildcard (%) operator to match subdirectories. 51 | # GNU make only allows one wildcard for matching. The second wildcard (%) is 52 | # treated literally. 53 | # 54 | # (default) PROJECT_EXCLUSIONS = (blank) 55 | # 56 | # Will automatically exclude the following: 57 | # 58 | # $(PROJECT_ROOT)/bin% 59 | # $(PROJECT_ROOT)/obj% 60 | # $(PROJECT_ROOT)/%.xcodeproj 61 | # 62 | # Note: Leave a leading space when adding list items with the += operator 63 | ################################################################################ 64 | # PROJECT_EXCLUSIONS = 65 | 66 | ################################################################################ 67 | # PROJECT LINKER FLAGS 68 | # These flags will be sent to the linker when compiling the executable. 69 | # 70 | # (default) PROJECT_LDFLAGS = -Wl,-rpath=./libs 71 | # 72 | # Note: Leave a leading space when adding list items with the += operator 73 | ################################################################################ 74 | 75 | # Currently, shared libraries that are needed are copied to the 76 | # $(PROJECT_ROOT)/bin/libs directory. The following LDFLAGS tell the linker to 77 | # add a runtime path to search for those shared libraries, since they aren't 78 | # incorporated directly into the final executable application binary. 79 | # TODO: should this be a default setting? 80 | # PROJECT_LDFLAGS=-Wl,-rpath=./libs 81 | 82 | ################################################################################ 83 | # PROJECT DEFINES 84 | # Create a space-delimited list of DEFINES. The list will be converted into 85 | # CFLAGS with the "-D" flag later in the makefile. 86 | # 87 | # (default) PROJECT_DEFINES = (blank) 88 | # 89 | # Note: Leave a leading space when adding list items with the += operator 90 | ################################################################################ 91 | # PROJECT_DEFINES = 92 | 93 | ################################################################################ 94 | # PROJECT CFLAGS 95 | # This is a list of fully qualified CFLAGS required when compiling for this 96 | # project. These CFLAGS will be used IN ADDITION TO the PLATFORM_CFLAGS 97 | # defined in your platform specific core configuration files. These flags are 98 | # presented to the compiler BEFORE the PROJECT_OPTIMIZATION_CFLAGS below. 99 | # 100 | # (default) PROJECT_CFLAGS = (blank) 101 | # 102 | # Note: Before adding PROJECT_CFLAGS, note that the PLATFORM_CFLAGS defined in 103 | # your platform specific configuration file will be applied by default and 104 | # further flags here may not be needed. 105 | # 106 | # Note: Leave a leading space when adding list items with the += operator 107 | ################################################################################ 108 | # PROJECT_CFLAGS = 109 | 110 | ################################################################################ 111 | # PROJECT OPTIMIZATION CFLAGS 112 | # These are lists of CFLAGS that are target-specific. While any flags could 113 | # be conditionally added, they are usually limited to optimization flags. 114 | # These flags are added BEFORE the PROJECT_CFLAGS. 115 | # 116 | # PROJECT_OPTIMIZATION_CFLAGS_RELEASE flags are only applied to RELEASE targets. 117 | # 118 | # (default) PROJECT_OPTIMIZATION_CFLAGS_RELEASE = (blank) 119 | # 120 | # PROJECT_OPTIMIZATION_CFLAGS_DEBUG flags are only applied to DEBUG targets. 121 | # 122 | # (default) PROJECT_OPTIMIZATION_CFLAGS_DEBUG = (blank) 123 | # 124 | # Note: Before adding PROJECT_OPTIMIZATION_CFLAGS, please note that the 125 | # PLATFORM_OPTIMIZATION_CFLAGS defined in your platform specific configuration 126 | # file will be applied by default and further optimization flags here may not 127 | # be needed. 128 | # 129 | # Note: Leave a leading space when adding list items with the += operator 130 | ################################################################################ 131 | # PROJECT_OPTIMIZATION_CFLAGS_RELEASE = 132 | # PROJECT_OPTIMIZATION_CFLAGS_DEBUG = 133 | 134 | ################################################################################ 135 | # PROJECT COMPILERS 136 | # Custom compilers can be set for CC and CXX 137 | # (default) PROJECT_CXX = (blank) 138 | # (default) PROJECT_CC = (blank) 139 | # Note: Leave a leading space when adding list items with the += operator 140 | ################################################################################ 141 | # PROJECT_CXX = 142 | # PROJECT_CC = 143 | -------------------------------------------------------------------------------- /example-simple-documentation/example-simple-documentation.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | archiveVersion 5 | 1 6 | classes 7 | 8 | objectVersion 9 | 46 10 | objects 11 | 12 | 911D0111E2A5211269A4812D 13 | 14 | explicitFileType 15 | sourcecode.c.h 16 | fileEncoding 17 | 30 18 | isa 19 | PBXFileReference 20 | name 21 | ofxSandLine.h 22 | path 23 | ../../../addons/ofxSandLine/src/ofxSandLine.h 24 | sourceTree 25 | SOURCE_ROOT 26 | 27 | 8883051E4ABA076E6F75555B 28 | 29 | children 30 | 31 | B1CFCD11058E3E0E9651BAE4 32 | 911D0111E2A5211269A4812D 33 | 34 | isa 35 | PBXGroup 36 | name 37 | src 38 | sourceTree 39 | <group> 40 | 41 | 22C6599D4FAAC22FBA3312FA 42 | 43 | children 44 | 45 | 8883051E4ABA076E6F75555B 46 | 47 | isa 48 | PBXGroup 49 | name 50 | ofxSandLine 51 | sourceTree 52 | <group> 53 | 54 | 68BA34B8B8751454346798E8 55 | 56 | fileRef 57 | B1CFCD11058E3E0E9651BAE4 58 | isa 59 | PBXBuildFile 60 | 61 | B1CFCD11058E3E0E9651BAE4 62 | 63 | explicitFileType 64 | sourcecode.cpp.cpp 65 | fileEncoding 66 | 30 67 | isa 68 | PBXFileReference 69 | name 70 | ofxSandLine.cpp 71 | path 72 | ../../../addons/ofxSandLine/src/ofxSandLine.cpp 73 | sourceTree 74 | SOURCE_ROOT 75 | 76 | 6948EE371B920CB800B5AC1A 77 | 78 | children 79 | 80 | isa 81 | PBXGroup 82 | name 83 | local_addons 84 | sourceTree 85 | <group> 86 | 87 | BB4B014C10F69532006C3DED 88 | 89 | children 90 | 91 | 22C6599D4FAAC22FBA3312FA 92 | 93 | isa 94 | PBXGroup 95 | name 96 | addons 97 | sourceTree 98 | <group> 99 | 100 | E4328143138ABC890047C5CB 101 | 102 | isa 103 | PBXFileReference 104 | lastKnownFileType 105 | wrapper.pb-project 106 | name 107 | openFrameworksLib.xcodeproj 108 | path 109 | ../../../libs/openFrameworksCompiled/project/osx/openFrameworksLib.xcodeproj 110 | sourceTree 111 | SOURCE_ROOT 112 | 113 | E4328144138ABC890047C5CB 114 | 115 | children 116 | 117 | E4328148138ABC890047C5CB 118 | 119 | isa 120 | PBXGroup 121 | name 122 | Products 123 | sourceTree 124 | <group> 125 | 126 | E4328147138ABC890047C5CB 127 | 128 | containerPortal 129 | E4328143138ABC890047C5CB 130 | isa 131 | PBXContainerItemProxy 132 | proxyType 133 | 2 134 | remoteGlobalIDString 135 | E4B27C1510CBEB8E00536013 136 | remoteInfo 137 | openFrameworks 138 | 139 | E4328148138ABC890047C5CB 140 | 141 | fileType 142 | archive.ar 143 | isa 144 | PBXReferenceProxy 145 | path 146 | openFrameworksDebug.a 147 | remoteRef 148 | E4328147138ABC890047C5CB 149 | sourceTree 150 | BUILT_PRODUCTS_DIR 151 | 152 | E4328149138ABC9F0047C5CB 153 | 154 | fileRef 155 | E4328148138ABC890047C5CB 156 | isa 157 | PBXBuildFile 158 | 159 | E4B69B4A0A3A1720003C02F2 160 | 161 | children 162 | 163 | E4B6FCAD0C3E899E008CF71C 164 | E4EB6923138AFD0F00A09F29 165 | E4B69E1C0A3A1BDC003C02F2 166 | E4EEC9E9138DF44700A80321 167 | BB4B014C10F69532006C3DED 168 | 6948EE371B920CB800B5AC1A 169 | E4B69B5B0A3A1756003C02F2 170 | 171 | isa 172 | PBXGroup 173 | sourceTree 174 | <group> 175 | 176 | E4B69B4C0A3A1720003C02F2 177 | 178 | attributes 179 | 180 | LastUpgradeCheck 181 | 0600 182 | 183 | buildConfigurationList 184 | E4B69B4D0A3A1720003C02F2 185 | compatibilityVersion 186 | Xcode 3.2 187 | developmentRegion 188 | English 189 | hasScannedForEncodings 190 | 0 191 | isa 192 | PBXProject 193 | knownRegions 194 | 195 | English 196 | Japanese 197 | French 198 | German 199 | 200 | mainGroup 201 | E4B69B4A0A3A1720003C02F2 202 | productRefGroup 203 | E4B69B4A0A3A1720003C02F2 204 | projectDirPath 205 | 206 | projectReferences 207 | 208 | 209 | ProductGroup 210 | E4328144138ABC890047C5CB 211 | ProjectRef 212 | E4328143138ABC890047C5CB 213 | 214 | 215 | projectRoot 216 | 217 | targets 218 | 219 | E4B69B5A0A3A1756003C02F2 220 | 221 | 222 | E4B69B4D0A3A1720003C02F2 223 | 224 | buildConfigurations 225 | 226 | E4B69B4E0A3A1720003C02F2 227 | E4B69B4F0A3A1720003C02F2 228 | 229 | defaultConfigurationIsVisible 230 | 0 231 | defaultConfigurationName 232 | Release 233 | isa 234 | XCConfigurationList 235 | 236 | E4B69B4E0A3A1720003C02F2 237 | 238 | baseConfigurationReference 239 | E4EB6923138AFD0F00A09F29 240 | buildSettings 241 | 242 | HEADER_SEARCH_PATHS 243 | 244 | $(OF_CORE_HEADERS) 245 | ../../../addons/ofxSandLine/src 246 | 247 | CONFIGURATION_BUILD_DIR 248 | $(SRCROOT)/bin/ 249 | COPY_PHASE_STRIP 250 | NO 251 | DEAD_CODE_STRIPPING 252 | YES 253 | GCC_AUTO_VECTORIZATION 254 | YES 255 | GCC_ENABLE_SSE3_EXTENSIONS 256 | YES 257 | GCC_ENABLE_SUPPLEMENTAL_SSE3_INSTRUCTIONS 258 | YES 259 | GCC_INLINES_ARE_PRIVATE_EXTERN 260 | NO 261 | GCC_OPTIMIZATION_LEVEL 262 | 0 263 | GCC_SYMBOLS_PRIVATE_EXTERN 264 | NO 265 | GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS 266 | YES 267 | GCC_WARN_ABOUT_INVALID_OFFSETOF_MACRO 268 | NO 269 | GCC_WARN_ALLOW_INCOMPLETE_PROTOCOL 270 | NO 271 | GCC_WARN_UNINITIALIZED_AUTOS 272 | NO 273 | GCC_WARN_UNUSED_VALUE 274 | NO 275 | GCC_WARN_UNUSED_VARIABLE 276 | NO 277 | MACOSX_DEPLOYMENT_TARGET 278 | 10.8 279 | ONLY_ACTIVE_ARCH 280 | YES 281 | OTHER_CPLUSPLUSFLAGS 282 | 283 | -D__MACOSX_CORE__ 284 | -mtune=native 285 | 286 | SDKROOT 287 | macosx 288 | 289 | isa 290 | XCBuildConfiguration 291 | name 292 | Debug 293 | 294 | E4B69B4F0A3A1720003C02F2 295 | 296 | baseConfigurationReference 297 | E4EB6923138AFD0F00A09F29 298 | buildSettings 299 | 300 | HEADER_SEARCH_PATHS 301 | 302 | $(OF_CORE_HEADERS) 303 | ../../../addons/ofxSandLine/src 304 | 305 | CONFIGURATION_BUILD_DIR 306 | $(SRCROOT)/bin/ 307 | COPY_PHASE_STRIP 308 | YES 309 | DEAD_CODE_STRIPPING 310 | YES 311 | GCC_AUTO_VECTORIZATION 312 | YES 313 | GCC_ENABLE_SSE3_EXTENSIONS 314 | YES 315 | GCC_ENABLE_SUPPLEMENTAL_SSE3_INSTRUCTIONS 316 | YES 317 | GCC_INLINES_ARE_PRIVATE_EXTERN 318 | NO 319 | GCC_OPTIMIZATION_LEVEL 320 | 3 321 | GCC_SYMBOLS_PRIVATE_EXTERN 322 | NO 323 | GCC_UNROLL_LOOPS 324 | YES 325 | GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS 326 | YES 327 | GCC_WARN_ABOUT_INVALID_OFFSETOF_MACRO 328 | NO 329 | GCC_WARN_ALLOW_INCOMPLETE_PROTOCOL 330 | NO 331 | GCC_WARN_UNINITIALIZED_AUTOS 332 | NO 333 | GCC_WARN_UNUSED_VALUE 334 | NO 335 | GCC_WARN_UNUSED_VARIABLE 336 | NO 337 | MACOSX_DEPLOYMENT_TARGET 338 | 10.8 339 | OTHER_CPLUSPLUSFLAGS 340 | 341 | -D__MACOSX_CORE__ 342 | -mtune=native 343 | 344 | SDKROOT 345 | macosx 346 | 347 | isa 348 | XCBuildConfiguration 349 | name 350 | Release 351 | 352 | E4B69B580A3A1756003C02F2 353 | 354 | buildActionMask 355 | 2147483647 356 | files 357 | 358 | E4B69E200A3A1BDC003C02F2 359 | E4B69E210A3A1BDC003C02F2 360 | 68BA34B8B8751454346798E8 361 | 362 | isa 363 | PBXSourcesBuildPhase 364 | runOnlyForDeploymentPostprocessing 365 | 0 366 | 367 | E4B69B590A3A1756003C02F2 368 | 369 | buildActionMask 370 | 2147483647 371 | files 372 | 373 | E4328149138ABC9F0047C5CB 374 | 375 | isa 376 | PBXFrameworksBuildPhase 377 | runOnlyForDeploymentPostprocessing 378 | 0 379 | 380 | E4B69B5A0A3A1756003C02F2 381 | 382 | buildConfigurationList 383 | E4B69B5F0A3A1757003C02F2 384 | buildPhases 385 | 386 | E4B69B580A3A1756003C02F2 387 | E4B69B590A3A1756003C02F2 388 | E4B6FFFD0C3F9AB9008CF71C 389 | E4C2427710CC5ABF004149E2 390 | 391 | buildRules 392 | 393 | dependencies 394 | 395 | E4EEB9AC138B136A00A80321 396 | 397 | isa 398 | PBXNativeTarget 399 | name 400 | example-simple-documentation 401 | productName 402 | myOFApp 403 | productReference 404 | E4B69B5B0A3A1756003C02F2 405 | productType 406 | com.apple.product-type.application 407 | 408 | E4B69B5B0A3A1756003C02F2 409 | 410 | explicitFileType 411 | wrapper.application 412 | includeInIndex 413 | 0 414 | isa 415 | PBXFileReference 416 | path 417 | example-simple-documentationDebug.app 418 | sourceTree 419 | BUILT_PRODUCTS_DIR 420 | 421 | E4B69B5F0A3A1757003C02F2 422 | 423 | buildConfigurations 424 | 425 | E4B69B600A3A1757003C02F2 426 | E4B69B610A3A1757003C02F2 427 | 428 | defaultConfigurationIsVisible 429 | 0 430 | defaultConfigurationName 431 | Release 432 | isa 433 | XCConfigurationList 434 | 435 | E4B69B600A3A1757003C02F2 436 | 437 | baseConfigurationReference 438 | E4EB6923138AFD0F00A09F29 439 | buildSettings 440 | 441 | HEADER_SEARCH_PATHS 442 | 443 | $(OF_CORE_HEADERS) 444 | ../../../addons/ofxSandLine/src 445 | 446 | COMBINE_HIDPI_IMAGES 447 | YES 448 | COPY_PHASE_STRIP 449 | NO 450 | FRAMEWORK_SEARCH_PATHS 451 | 452 | $(inherited) 453 | $(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1) 454 | 455 | FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 456 | "$(SRCROOT)/../../../libs/glut/lib/osx" 457 | GCC_DYNAMIC_NO_PIC 458 | NO 459 | GCC_GENERATE_DEBUGGING_SYMBOLS 460 | YES 461 | GCC_MODEL_TUNING 462 | NONE 463 | ICON 464 | $(ICON_NAME_DEBUG) 465 | ICON_FILE 466 | $(ICON_FILE_PATH)$(ICON) 467 | INFOPLIST_FILE 468 | openFrameworks-Info.plist 469 | INSTALL_PATH 470 | /Applications 471 | LIBRARY_SEARCH_PATHS 472 | $(inherited) 473 | PRODUCT_NAME 474 | $(TARGET_NAME)Debug 475 | WRAPPER_EXTENSION 476 | app 477 | 478 | isa 479 | XCBuildConfiguration 480 | name 481 | Debug 482 | 483 | E4B69B610A3A1757003C02F2 484 | 485 | baseConfigurationReference 486 | E4EB6923138AFD0F00A09F29 487 | buildSettings 488 | 489 | HEADER_SEARCH_PATHS 490 | 491 | $(OF_CORE_HEADERS) 492 | ../../../addons/ofxSandLine/src 493 | 494 | COMBINE_HIDPI_IMAGES 495 | YES 496 | COPY_PHASE_STRIP 497 | YES 498 | FRAMEWORK_SEARCH_PATHS 499 | 500 | $(inherited) 501 | $(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1) 502 | 503 | FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 504 | "$(SRCROOT)/../../../libs/glut/lib/osx" 505 | GCC_GENERATE_DEBUGGING_SYMBOLS 506 | YES 507 | GCC_MODEL_TUNING 508 | NONE 509 | ICON 510 | $(ICON_NAME_RELEASE) 511 | ICON_FILE 512 | $(ICON_FILE_PATH)$(ICON) 513 | INFOPLIST_FILE 514 | openFrameworks-Info.plist 515 | INSTALL_PATH 516 | /Applications 517 | LIBRARY_SEARCH_PATHS 518 | $(inherited) 519 | PRODUCT_NAME 520 | $(TARGET_NAME) 521 | WRAPPER_EXTENSION 522 | app 523 | baseConfigurationReference 524 | E4EB6923138AFD0F00A09F29 525 | 526 | isa 527 | XCBuildConfiguration 528 | name 529 | Release 530 | 531 | E4B69E1C0A3A1BDC003C02F2 532 | 533 | children 534 | 535 | E4B69E1D0A3A1BDC003C02F2 536 | E4B69E1E0A3A1BDC003C02F2 537 | E4B69E1F0A3A1BDC003C02F2 538 | 539 | isa 540 | PBXGroup 541 | path 542 | src 543 | sourceTree 544 | SOURCE_ROOT 545 | 546 | E4B69E1D0A3A1BDC003C02F2 547 | 548 | fileEncoding 549 | 30 550 | isa 551 | PBXFileReference 552 | lastKnownFileType 553 | sourcecode.cpp.cpp 554 | name 555 | main.cpp 556 | path 557 | src/main.cpp 558 | sourceTree 559 | SOURCE_ROOT 560 | 561 | E4B69E1E0A3A1BDC003C02F2 562 | 563 | explicitFileType 564 | sourcecode.cpp.cpp 565 | fileEncoding 566 | 30 567 | isa 568 | PBXFileReference 569 | name 570 | ofApp.cpp 571 | path 572 | src/ofApp.cpp 573 | sourceTree 574 | SOURCE_ROOT 575 | 576 | E4B69E1F0A3A1BDC003C02F2 577 | 578 | fileEncoding 579 | 30 580 | isa 581 | PBXFileReference 582 | lastKnownFileType 583 | sourcecode.c.h 584 | name 585 | ofApp.h 586 | path 587 | src/ofApp.h 588 | sourceTree 589 | SOURCE_ROOT 590 | 591 | E4B69E200A3A1BDC003C02F2 592 | 593 | fileRef 594 | E4B69E1D0A3A1BDC003C02F2 595 | isa 596 | PBXBuildFile 597 | 598 | E4B69E210A3A1BDC003C02F2 599 | 600 | fileRef 601 | E4B69E1E0A3A1BDC003C02F2 602 | isa 603 | PBXBuildFile 604 | 605 | E4B6FCAD0C3E899E008CF71C 606 | 607 | fileEncoding 608 | 30 609 | isa 610 | PBXFileReference 611 | lastKnownFileType 612 | text.plist.xml 613 | path 614 | openFrameworks-Info.plist 615 | sourceTree 616 | <group> 617 | 618 | E4B6FFFD0C3F9AB9008CF71C 619 | 620 | buildActionMask 621 | 2147483647 622 | files 623 | 624 | inputPaths 625 | 626 | isa 627 | PBXShellScriptBuildPhase 628 | outputPaths 629 | 630 | runOnlyForDeploymentPostprocessing 631 | 0 632 | shellPath 633 | /bin/sh 634 | shellScript 635 | mkdir -p "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Resources/" 636 | # Copy default icon file into App/Resources 637 | rsync -aved "$ICON_FILE" "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Resources/" 638 | # Copy libfmod and change install directory for fmod to run 639 | rsync -aved ../../../libs/fmodex/lib/osx/libfmodex.dylib "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Frameworks/"; 640 | install_name_tool -change @executable_path/libfmodex.dylib @executable_path/../Frameworks/libfmodex.dylib "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/MacOS/$PRODUCT_NAME"; 641 | # Copy GLUT framework (must remove for AppStore submissions) 642 | rsync -aved ../../../libs/glut/lib/osx/GLUT.framework "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Frameworks/" 643 | 644 | 645 | E4C2427710CC5ABF004149E2 646 | 647 | buildActionMask 648 | 2147483647 649 | dstPath 650 | 651 | dstSubfolderSpec 652 | 10 653 | files 654 | 655 | isa 656 | PBXCopyFilesBuildPhase 657 | runOnlyForDeploymentPostprocessing 658 | 0 659 | 660 | E4EB691F138AFCF100A09F29 661 | 662 | fileEncoding 663 | 4 664 | isa 665 | PBXFileReference 666 | lastKnownFileType 667 | text.xcconfig 668 | name 669 | CoreOF.xcconfig 670 | path 671 | ../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig 672 | sourceTree 673 | SOURCE_ROOT 674 | 675 | E4EB6923138AFD0F00A09F29 676 | 677 | fileEncoding 678 | 4 679 | isa 680 | PBXFileReference 681 | lastKnownFileType 682 | text.xcconfig 683 | path 684 | Project.xcconfig 685 | sourceTree 686 | <group> 687 | 688 | E4EEB9AB138B136A00A80321 689 | 690 | containerPortal 691 | E4328143138ABC890047C5CB 692 | isa 693 | PBXContainerItemProxy 694 | proxyType 695 | 1 696 | remoteGlobalIDString 697 | E4B27C1410CBEB8E00536013 698 | remoteInfo 699 | openFrameworks 700 | 701 | E4EEB9AC138B136A00A80321 702 | 703 | isa 704 | PBXTargetDependency 705 | name 706 | openFrameworks 707 | targetProxy 708 | E4EEB9AB138B136A00A80321 709 | 710 | E4EEC9E9138DF44700A80321 711 | 712 | children 713 | 714 | E4EB691F138AFCF100A09F29 715 | E4328143138ABC890047C5CB 716 | 717 | isa 718 | PBXGroup 719 | name 720 | openFrameworks 721 | sourceTree 722 | <group> 723 | 724 | 725 | rootObject 726 | E4B69B4C0A3A1720003C02F2 727 | 728 | 729 | -------------------------------------------------------------------------------- /example-simple-documentation/example-simple-documentation.xcodeproj/xcshareddata/xcschemes/example-simple-documentation Debug.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 32 | 33 | 39 | 40 | 41 | 42 | 51 | 52 | 58 | 59 | 60 | 61 | 62 | 63 | 69 | 70 | 76 | 77 | 78 | 79 | 81 | 82 | 85 | 86 | 87 | -------------------------------------------------------------------------------- /example-simple-documentation/example-simple-documentation.xcodeproj/xcshareddata/xcschemes/example-simple-documentation Release.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 32 | 33 | 39 | 40 | 41 | 42 | 51 | 52 | 58 | 59 | 60 | 61 | 62 | 63 | 69 | 70 | 76 | 77 | 78 | 79 | 81 | 82 | 85 | 86 | 87 | -------------------------------------------------------------------------------- /example-simple-documentation/openFrameworks-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | cc.openFrameworks.ofapp 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | APPL 15 | CFBundleSignature 16 | ???? 17 | CFBundleVersion 18 | 1.0 19 | CFBundleIconFile 20 | ${ICON} 21 | 22 | 23 | -------------------------------------------------------------------------------- /example-simple-documentation/src/main.cpp: -------------------------------------------------------------------------------- 1 | #include "ofMain.h" 2 | #include "ofApp.h" 3 | 4 | //======================================================================== 5 | int main( ){ 6 | ofSetupOpenGL(1024,768,OF_WINDOW); // <-------- setup the GL context 7 | 8 | // this kicks off the running of my app 9 | // can be OF_WINDOW or OF_FULLSCREEN 10 | // pass in width and height too: 11 | ofRunApp(new ofApp()); 12 | 13 | } 14 | -------------------------------------------------------------------------------- /example-simple-documentation/src/ofApp.cpp: -------------------------------------------------------------------------------- 1 | #include "ofApp.h" 2 | 3 | //-------------------------------------------------------------- 4 | void ofApp::setup(){ 5 | ofSetBackgroundColor(0); 6 | 7 | //A straight line constructor. 8 | //it needs two ofpoints (start point and end point) 9 | line = ofxSandLine(ofPoint(0, ofGetHeight()/3), ofPoint(ofGetWidth(), ofGetHeight()/3)); 10 | 11 | //A spline constructor. 12 | //it needs four points (start point and end point and two control points) 13 | ofPoint start(0, ofGetHeight() - ofGetHeight()/3); 14 | ofPoint end(ofGetWidth(), ofGetHeight() - ofGetHeight()/3); 15 | ofPoint control1(ofGetWidth()/3, ofGetHeight()); 16 | ofPoint control2(ofGetWidth() - ofGetWidth()/3, ofGetHeight() - ofGetHeight()/3); 17 | 18 | spline = ofxSandLine(start, control1, control2, end); 19 | 20 | //Additional options can be set with these: 21 | 22 | //sets the max size of the grains (default: 1) 23 | line.setMaxSize(2); 24 | spline.setMaxSize(2); 25 | 26 | //sets the spread of the grains (default: 1) 27 | line.setBreadth(1); 28 | 29 | //sets the color of the grains (default: white) 30 | line.setColor(ofColor(255, 255, 255)); 31 | 32 | //sets the maximum alpha value (default: 64) 33 | line.setMaxAlpha(64); 34 | 35 | //sets the offset over time of the grains (default: 1) 36 | //if you don't want it to move away from it's start position, set to 0 37 | line.setOffset(0); 38 | //you can also set each of the four points' offset individually by doing 39 | spline.setOffset(0, 2, 2, 0); 40 | 41 | //because a straight line is implicitly being drawn as a spline with some math [;)] there's a way to 42 | //force it to behave like a spline over time 43 | //additionaly a spline can also be set to SAND_MODE_LINE but will move the control points away 44 | //and make it into a straight line, so maybe not recommended. 45 | line.setMode(SAND_MODE_SPLINE); //note: this actually won't make a difference here because the offsets for the control points are set to 0 above; 46 | 47 | } 48 | 49 | //-------------------------------------------------------------- 50 | void ofApp::update(){ 51 | 52 | //the draw function calls the update method implicitly, so nothing to do here :) 53 | 54 | auto p = spline.getPoints(); //this returns a vector of 4 ofPoints with the current positions of the start, control and end points 55 | 56 | //uncomment the next line to see what the getPoints() function returns 57 | //cout << p[0] << p[1] << p[2] << p[3] << endl; 58 | 59 | //it's also possible to set the point individually at any time - check the chaining example. 60 | } 61 | 62 | //-------------------------------------------------------------- 63 | void ofApp::draw(){ 64 | 65 | //draw functions need a "resolution" specified. 66 | //the actual number of grains being drawn is resolution/4. 67 | 68 | line.draw(5000); 69 | spline.draw(5000); 70 | 71 | } 72 | 73 | //-------------------------------------------------------------- 74 | void ofApp::keyPressed(int key){ 75 | 76 | } 77 | 78 | //-------------------------------------------------------------- 79 | void ofApp::keyReleased(int key){ 80 | 81 | } 82 | 83 | //-------------------------------------------------------------- 84 | void ofApp::mouseMoved(int x, int y ){ 85 | 86 | } 87 | 88 | //-------------------------------------------------------------- 89 | void ofApp::mouseDragged(int x, int y, int button){ 90 | 91 | } 92 | 93 | //-------------------------------------------------------------- 94 | void ofApp::mousePressed(int x, int y, int button){ 95 | 96 | } 97 | 98 | //-------------------------------------------------------------- 99 | void ofApp::mouseReleased(int x, int y, int button){ 100 | 101 | } 102 | 103 | //-------------------------------------------------------------- 104 | void ofApp::mouseEntered(int x, int y){ 105 | 106 | } 107 | 108 | //-------------------------------------------------------------- 109 | void ofApp::mouseExited(int x, int y){ 110 | 111 | } 112 | 113 | //-------------------------------------------------------------- 114 | void ofApp::windowResized(int w, int h){ 115 | 116 | } 117 | 118 | //-------------------------------------------------------------- 119 | void ofApp::gotMessage(ofMessage msg){ 120 | 121 | } 122 | 123 | //-------------------------------------------------------------- 124 | void ofApp::dragEvent(ofDragInfo dragInfo){ 125 | 126 | } 127 | -------------------------------------------------------------------------------- /example-simple-documentation/src/ofApp.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "ofMain.h" 4 | #include "ofxSandLine.h" 5 | 6 | class ofApp : public ofBaseApp{ 7 | 8 | public: 9 | void setup(); 10 | void update(); 11 | void draw(); 12 | 13 | void keyPressed(int key); 14 | void keyReleased(int key); 15 | void mouseMoved(int x, int y ); 16 | void mouseDragged(int x, int y, int button); 17 | void mousePressed(int x, int y, int button); 18 | void mouseReleased(int x, int y, int button); 19 | void mouseEntered(int x, int y); 20 | void mouseExited(int x, int y); 21 | void windowResized(int w, int h); 22 | void dragEvent(ofDragInfo dragInfo); 23 | void gotMessage(ofMessage msg); 24 | 25 | ofxSandLine line; 26 | ofxSandLine spline; 27 | 28 | }; 29 | -------------------------------------------------------------------------------- /example-triangle/Makefile: -------------------------------------------------------------------------------- 1 | # Attempt to load a config.make file. 2 | # If none is found, project defaults in config.project.make will be used. 3 | ifneq ($(wildcard config.make),) 4 | include config.make 5 | endif 6 | 7 | # make sure the the OF_ROOT location is defined 8 | ifndef OF_ROOT 9 | OF_ROOT=$(realpath ../../..) 10 | endif 11 | 12 | # call the project makefile! 13 | include $(OF_ROOT)/libs/openFrameworksCompiled/project/makefileCommon/compile.project.mk 14 | -------------------------------------------------------------------------------- /example-triangle/Project.xcconfig: -------------------------------------------------------------------------------- 1 | //THE PATH TO THE ROOT OF OUR OF PATH RELATIVE TO THIS PROJECT. 2 | //THIS NEEDS TO BE DEFINED BEFORE CoreOF.xcconfig IS INCLUDED 3 | OF_PATH = ../../.. 4 | 5 | //THIS HAS ALL THE HEADER AND LIBS FOR OF CORE 6 | #include "../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig" 7 | 8 | //ICONS - NEW IN 0072 9 | ICON_NAME_DEBUG = icon-debug.icns 10 | ICON_NAME_RELEASE = icon.icns 11 | ICON_FILE_PATH = $(OF_PATH)/libs/openFrameworksCompiled/project/osx/ 12 | 13 | //IF YOU WANT AN APP TO HAVE A CUSTOM ICON - PUT THEM IN YOUR DATA FOLDER AND CHANGE ICON_FILE_PATH to: 14 | //ICON_FILE_PATH = bin/data/ 15 | 16 | OTHER_LDFLAGS = $(OF_CORE_LIBS) $(OF_CORE_FRAMEWORKS) 17 | HEADER_SEARCH_PATHS = $(OF_CORE_HEADERS) 18 | -------------------------------------------------------------------------------- /example-triangle/addons.make: -------------------------------------------------------------------------------- 1 | ofxSandLine 2 | -------------------------------------------------------------------------------- /example-triangle/bin/data/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/sourya-sen/ofxSandLine/88b0bfc1fab841697e54b63169ad7695db6d2d85/example-triangle/bin/data/.gitkeep -------------------------------------------------------------------------------- /example-triangle/config.make: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # CONFIGURE PROJECT MAKEFILE (optional) 3 | # This file is where we make project specific configurations. 4 | ################################################################################ 5 | 6 | ################################################################################ 7 | # OF ROOT 8 | # The location of your root openFrameworks installation 9 | # (default) OF_ROOT = ../../.. 10 | ################################################################################ 11 | # OF_ROOT = ../../.. 12 | 13 | ################################################################################ 14 | # PROJECT ROOT 15 | # The location of the project - a starting place for searching for files 16 | # (default) PROJECT_ROOT = . (this directory) 17 | # 18 | ################################################################################ 19 | # PROJECT_ROOT = . 20 | 21 | ################################################################################ 22 | # PROJECT SPECIFIC CHECKS 23 | # This is a project defined section to create internal makefile flags to 24 | # conditionally enable or disable the addition of various features within 25 | # this makefile. For instance, if you want to make changes based on whether 26 | # GTK is installed, one might test that here and create a variable to check. 27 | ################################################################################ 28 | # None 29 | 30 | ################################################################################ 31 | # PROJECT EXTERNAL SOURCE PATHS 32 | # These are fully qualified paths that are not within the PROJECT_ROOT folder. 33 | # Like source folders in the PROJECT_ROOT, these paths are subject to 34 | # exlclusion via the PROJECT_EXLCUSIONS list. 35 | # 36 | # (default) PROJECT_EXTERNAL_SOURCE_PATHS = (blank) 37 | # 38 | # Note: Leave a leading space when adding list items with the += operator 39 | ################################################################################ 40 | # PROJECT_EXTERNAL_SOURCE_PATHS = 41 | 42 | ################################################################################ 43 | # PROJECT EXCLUSIONS 44 | # These makefiles assume that all folders in your current project directory 45 | # and any listed in the PROJECT_EXTERNAL_SOURCH_PATHS are are valid locations 46 | # to look for source code. The any folders or files that match any of the 47 | # items in the PROJECT_EXCLUSIONS list below will be ignored. 48 | # 49 | # Each item in the PROJECT_EXCLUSIONS list will be treated as a complete 50 | # string unless teh user adds a wildcard (%) operator to match subdirectories. 51 | # GNU make only allows one wildcard for matching. The second wildcard (%) is 52 | # treated literally. 53 | # 54 | # (default) PROJECT_EXCLUSIONS = (blank) 55 | # 56 | # Will automatically exclude the following: 57 | # 58 | # $(PROJECT_ROOT)/bin% 59 | # $(PROJECT_ROOT)/obj% 60 | # $(PROJECT_ROOT)/%.xcodeproj 61 | # 62 | # Note: Leave a leading space when adding list items with the += operator 63 | ################################################################################ 64 | # PROJECT_EXCLUSIONS = 65 | 66 | ################################################################################ 67 | # PROJECT LINKER FLAGS 68 | # These flags will be sent to the linker when compiling the executable. 69 | # 70 | # (default) PROJECT_LDFLAGS = -Wl,-rpath=./libs 71 | # 72 | # Note: Leave a leading space when adding list items with the += operator 73 | ################################################################################ 74 | 75 | # Currently, shared libraries that are needed are copied to the 76 | # $(PROJECT_ROOT)/bin/libs directory. The following LDFLAGS tell the linker to 77 | # add a runtime path to search for those shared libraries, since they aren't 78 | # incorporated directly into the final executable application binary. 79 | # TODO: should this be a default setting? 80 | # PROJECT_LDFLAGS=-Wl,-rpath=./libs 81 | 82 | ################################################################################ 83 | # PROJECT DEFINES 84 | # Create a space-delimited list of DEFINES. The list will be converted into 85 | # CFLAGS with the "-D" flag later in the makefile. 86 | # 87 | # (default) PROJECT_DEFINES = (blank) 88 | # 89 | # Note: Leave a leading space when adding list items with the += operator 90 | ################################################################################ 91 | # PROJECT_DEFINES = 92 | 93 | ################################################################################ 94 | # PROJECT CFLAGS 95 | # This is a list of fully qualified CFLAGS required when compiling for this 96 | # project. These CFLAGS will be used IN ADDITION TO the PLATFORM_CFLAGS 97 | # defined in your platform specific core configuration files. These flags are 98 | # presented to the compiler BEFORE the PROJECT_OPTIMIZATION_CFLAGS below. 99 | # 100 | # (default) PROJECT_CFLAGS = (blank) 101 | # 102 | # Note: Before adding PROJECT_CFLAGS, note that the PLATFORM_CFLAGS defined in 103 | # your platform specific configuration file will be applied by default and 104 | # further flags here may not be needed. 105 | # 106 | # Note: Leave a leading space when adding list items with the += operator 107 | ################################################################################ 108 | # PROJECT_CFLAGS = 109 | 110 | ################################################################################ 111 | # PROJECT OPTIMIZATION CFLAGS 112 | # These are lists of CFLAGS that are target-specific. While any flags could 113 | # be conditionally added, they are usually limited to optimization flags. 114 | # These flags are added BEFORE the PROJECT_CFLAGS. 115 | # 116 | # PROJECT_OPTIMIZATION_CFLAGS_RELEASE flags are only applied to RELEASE targets. 117 | # 118 | # (default) PROJECT_OPTIMIZATION_CFLAGS_RELEASE = (blank) 119 | # 120 | # PROJECT_OPTIMIZATION_CFLAGS_DEBUG flags are only applied to DEBUG targets. 121 | # 122 | # (default) PROJECT_OPTIMIZATION_CFLAGS_DEBUG = (blank) 123 | # 124 | # Note: Before adding PROJECT_OPTIMIZATION_CFLAGS, please note that the 125 | # PLATFORM_OPTIMIZATION_CFLAGS defined in your platform specific configuration 126 | # file will be applied by default and further optimization flags here may not 127 | # be needed. 128 | # 129 | # Note: Leave a leading space when adding list items with the += operator 130 | ################################################################################ 131 | # PROJECT_OPTIMIZATION_CFLAGS_RELEASE = 132 | # PROJECT_OPTIMIZATION_CFLAGS_DEBUG = 133 | 134 | ################################################################################ 135 | # PROJECT COMPILERS 136 | # Custom compilers can be set for CC and CXX 137 | # (default) PROJECT_CXX = (blank) 138 | # (default) PROJECT_CC = (blank) 139 | # Note: Leave a leading space when adding list items with the += operator 140 | ################################################################################ 141 | # PROJECT_CXX = 142 | # PROJECT_CC = 143 | -------------------------------------------------------------------------------- /example-triangle/example-triangle.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | archiveVersion 5 | 1 6 | classes 7 | 8 | objectVersion 9 | 46 10 | objects 11 | 12 | 911D0111E2A5211269A4812D 13 | 14 | explicitFileType 15 | sourcecode.c.h 16 | fileEncoding 17 | 30 18 | isa 19 | PBXFileReference 20 | name 21 | ofxSandLine.h 22 | path 23 | ../../../addons/ofxSandLine/src/ofxSandLine.h 24 | sourceTree 25 | SOURCE_ROOT 26 | 27 | 8883051E4ABA076E6F75555B 28 | 29 | children 30 | 31 | B1CFCD11058E3E0E9651BAE4 32 | 911D0111E2A5211269A4812D 33 | 34 | isa 35 | PBXGroup 36 | name 37 | src 38 | sourceTree 39 | <group> 40 | 41 | 22C6599D4FAAC22FBA3312FA 42 | 43 | children 44 | 45 | 8883051E4ABA076E6F75555B 46 | 47 | isa 48 | PBXGroup 49 | name 50 | ofxSandLine 51 | sourceTree 52 | <group> 53 | 54 | 68BA34B8B8751454346798E8 55 | 56 | fileRef 57 | B1CFCD11058E3E0E9651BAE4 58 | isa 59 | PBXBuildFile 60 | 61 | B1CFCD11058E3E0E9651BAE4 62 | 63 | explicitFileType 64 | sourcecode.cpp.cpp 65 | fileEncoding 66 | 30 67 | isa 68 | PBXFileReference 69 | name 70 | ofxSandLine.cpp 71 | path 72 | ../../../addons/ofxSandLine/src/ofxSandLine.cpp 73 | sourceTree 74 | SOURCE_ROOT 75 | 76 | 6948EE371B920CB800B5AC1A 77 | 78 | children 79 | 80 | isa 81 | PBXGroup 82 | name 83 | local_addons 84 | sourceTree 85 | <group> 86 | 87 | BB4B014C10F69532006C3DED 88 | 89 | children 90 | 91 | 22C6599D4FAAC22FBA3312FA 92 | 93 | isa 94 | PBXGroup 95 | name 96 | addons 97 | sourceTree 98 | <group> 99 | 100 | E4328143138ABC890047C5CB 101 | 102 | isa 103 | PBXFileReference 104 | lastKnownFileType 105 | wrapper.pb-project 106 | name 107 | openFrameworksLib.xcodeproj 108 | path 109 | ../../../libs/openFrameworksCompiled/project/osx/openFrameworksLib.xcodeproj 110 | sourceTree 111 | SOURCE_ROOT 112 | 113 | E4328144138ABC890047C5CB 114 | 115 | children 116 | 117 | E4328148138ABC890047C5CB 118 | 119 | isa 120 | PBXGroup 121 | name 122 | Products 123 | sourceTree 124 | <group> 125 | 126 | E4328147138ABC890047C5CB 127 | 128 | containerPortal 129 | E4328143138ABC890047C5CB 130 | isa 131 | PBXContainerItemProxy 132 | proxyType 133 | 2 134 | remoteGlobalIDString 135 | E4B27C1510CBEB8E00536013 136 | remoteInfo 137 | openFrameworks 138 | 139 | E4328148138ABC890047C5CB 140 | 141 | fileType 142 | archive.ar 143 | isa 144 | PBXReferenceProxy 145 | path 146 | openFrameworksDebug.a 147 | remoteRef 148 | E4328147138ABC890047C5CB 149 | sourceTree 150 | BUILT_PRODUCTS_DIR 151 | 152 | E4328149138ABC9F0047C5CB 153 | 154 | fileRef 155 | E4328148138ABC890047C5CB 156 | isa 157 | PBXBuildFile 158 | 159 | E4B69B4A0A3A1720003C02F2 160 | 161 | children 162 | 163 | E4B6FCAD0C3E899E008CF71C 164 | E4EB6923138AFD0F00A09F29 165 | E4B69E1C0A3A1BDC003C02F2 166 | E4EEC9E9138DF44700A80321 167 | BB4B014C10F69532006C3DED 168 | 6948EE371B920CB800B5AC1A 169 | E4B69B5B0A3A1756003C02F2 170 | 171 | isa 172 | PBXGroup 173 | sourceTree 174 | <group> 175 | 176 | E4B69B4C0A3A1720003C02F2 177 | 178 | attributes 179 | 180 | LastUpgradeCheck 181 | 0600 182 | 183 | buildConfigurationList 184 | E4B69B4D0A3A1720003C02F2 185 | compatibilityVersion 186 | Xcode 3.2 187 | developmentRegion 188 | English 189 | hasScannedForEncodings 190 | 0 191 | isa 192 | PBXProject 193 | knownRegions 194 | 195 | English 196 | Japanese 197 | French 198 | German 199 | 200 | mainGroup 201 | E4B69B4A0A3A1720003C02F2 202 | productRefGroup 203 | E4B69B4A0A3A1720003C02F2 204 | projectDirPath 205 | 206 | projectReferences 207 | 208 | 209 | ProductGroup 210 | E4328144138ABC890047C5CB 211 | ProjectRef 212 | E4328143138ABC890047C5CB 213 | 214 | 215 | projectRoot 216 | 217 | targets 218 | 219 | E4B69B5A0A3A1756003C02F2 220 | 221 | 222 | E4B69B4D0A3A1720003C02F2 223 | 224 | buildConfigurations 225 | 226 | E4B69B4E0A3A1720003C02F2 227 | E4B69B4F0A3A1720003C02F2 228 | 229 | defaultConfigurationIsVisible 230 | 0 231 | defaultConfigurationName 232 | Release 233 | isa 234 | XCConfigurationList 235 | 236 | E4B69B4E0A3A1720003C02F2 237 | 238 | baseConfigurationReference 239 | E4EB6923138AFD0F00A09F29 240 | buildSettings 241 | 242 | HEADER_SEARCH_PATHS 243 | 244 | $(OF_CORE_HEADERS) 245 | src 246 | ../../../addons/ofxSandLine/src 247 | 248 | CONFIGURATION_BUILD_DIR 249 | $(SRCROOT)/bin/ 250 | COPY_PHASE_STRIP 251 | NO 252 | DEAD_CODE_STRIPPING 253 | YES 254 | GCC_AUTO_VECTORIZATION 255 | YES 256 | GCC_ENABLE_SSE3_EXTENSIONS 257 | YES 258 | GCC_ENABLE_SUPPLEMENTAL_SSE3_INSTRUCTIONS 259 | YES 260 | GCC_INLINES_ARE_PRIVATE_EXTERN 261 | NO 262 | GCC_OPTIMIZATION_LEVEL 263 | 0 264 | GCC_SYMBOLS_PRIVATE_EXTERN 265 | NO 266 | GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS 267 | YES 268 | GCC_WARN_ABOUT_INVALID_OFFSETOF_MACRO 269 | NO 270 | GCC_WARN_ALLOW_INCOMPLETE_PROTOCOL 271 | NO 272 | GCC_WARN_UNINITIALIZED_AUTOS 273 | NO 274 | GCC_WARN_UNUSED_VALUE 275 | NO 276 | GCC_WARN_UNUSED_VARIABLE 277 | NO 278 | MACOSX_DEPLOYMENT_TARGET 279 | 10.8 280 | ONLY_ACTIVE_ARCH 281 | YES 282 | OTHER_CPLUSPLUSFLAGS 283 | 284 | -D__MACOSX_CORE__ 285 | -mtune=native 286 | 287 | SDKROOT 288 | macosx 289 | 290 | isa 291 | XCBuildConfiguration 292 | name 293 | Debug 294 | 295 | E4B69B4F0A3A1720003C02F2 296 | 297 | baseConfigurationReference 298 | E4EB6923138AFD0F00A09F29 299 | buildSettings 300 | 301 | HEADER_SEARCH_PATHS 302 | 303 | $(OF_CORE_HEADERS) 304 | src 305 | ../../../addons/ofxSandLine/src 306 | 307 | CONFIGURATION_BUILD_DIR 308 | $(SRCROOT)/bin/ 309 | COPY_PHASE_STRIP 310 | YES 311 | DEAD_CODE_STRIPPING 312 | YES 313 | GCC_AUTO_VECTORIZATION 314 | YES 315 | GCC_ENABLE_SSE3_EXTENSIONS 316 | YES 317 | GCC_ENABLE_SUPPLEMENTAL_SSE3_INSTRUCTIONS 318 | YES 319 | GCC_INLINES_ARE_PRIVATE_EXTERN 320 | NO 321 | GCC_OPTIMIZATION_LEVEL 322 | 3 323 | GCC_SYMBOLS_PRIVATE_EXTERN 324 | NO 325 | GCC_UNROLL_LOOPS 326 | YES 327 | GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS 328 | YES 329 | GCC_WARN_ABOUT_INVALID_OFFSETOF_MACRO 330 | NO 331 | GCC_WARN_ALLOW_INCOMPLETE_PROTOCOL 332 | NO 333 | GCC_WARN_UNINITIALIZED_AUTOS 334 | NO 335 | GCC_WARN_UNUSED_VALUE 336 | NO 337 | GCC_WARN_UNUSED_VARIABLE 338 | NO 339 | MACOSX_DEPLOYMENT_TARGET 340 | 10.8 341 | OTHER_CPLUSPLUSFLAGS 342 | 343 | -D__MACOSX_CORE__ 344 | -mtune=native 345 | 346 | SDKROOT 347 | macosx 348 | 349 | isa 350 | XCBuildConfiguration 351 | name 352 | Release 353 | 354 | E4B69B580A3A1756003C02F2 355 | 356 | buildActionMask 357 | 2147483647 358 | files 359 | 360 | E4B69E200A3A1BDC003C02F2 361 | E4B69E210A3A1BDC003C02F2 362 | 68BA34B8B8751454346798E8 363 | 364 | isa 365 | PBXSourcesBuildPhase 366 | runOnlyForDeploymentPostprocessing 367 | 0 368 | 369 | E4B69B590A3A1756003C02F2 370 | 371 | buildActionMask 372 | 2147483647 373 | files 374 | 375 | E4328149138ABC9F0047C5CB 376 | 377 | isa 378 | PBXFrameworksBuildPhase 379 | runOnlyForDeploymentPostprocessing 380 | 0 381 | 382 | E4B69B5A0A3A1756003C02F2 383 | 384 | buildConfigurationList 385 | E4B69B5F0A3A1757003C02F2 386 | buildPhases 387 | 388 | E4B69B580A3A1756003C02F2 389 | E4B69B590A3A1756003C02F2 390 | E4B6FFFD0C3F9AB9008CF71C 391 | E4C2427710CC5ABF004149E2 392 | 393 | buildRules 394 | 395 | dependencies 396 | 397 | E4EEB9AC138B136A00A80321 398 | 399 | isa 400 | PBXNativeTarget 401 | name 402 | example-triangle 403 | productName 404 | myOFApp 405 | productReference 406 | E4B69B5B0A3A1756003C02F2 407 | productType 408 | com.apple.product-type.application 409 | 410 | E4B69B5B0A3A1756003C02F2 411 | 412 | explicitFileType 413 | wrapper.application 414 | includeInIndex 415 | 0 416 | isa 417 | PBXFileReference 418 | path 419 | example-triangleDebug.app 420 | sourceTree 421 | BUILT_PRODUCTS_DIR 422 | 423 | E4B69B5F0A3A1757003C02F2 424 | 425 | buildConfigurations 426 | 427 | E4B69B600A3A1757003C02F2 428 | E4B69B610A3A1757003C02F2 429 | 430 | defaultConfigurationIsVisible 431 | 0 432 | defaultConfigurationName 433 | Release 434 | isa 435 | XCConfigurationList 436 | 437 | E4B69B600A3A1757003C02F2 438 | 439 | baseConfigurationReference 440 | E4EB6923138AFD0F00A09F29 441 | buildSettings 442 | 443 | HEADER_SEARCH_PATHS 444 | 445 | $(OF_CORE_HEADERS) 446 | src 447 | ../../../addons/ofxSandLine/src 448 | 449 | COMBINE_HIDPI_IMAGES 450 | YES 451 | COPY_PHASE_STRIP 452 | NO 453 | FRAMEWORK_SEARCH_PATHS 454 | 455 | $(inherited) 456 | $(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1) 457 | 458 | FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 459 | "$(SRCROOT)/../../../libs/glut/lib/osx" 460 | GCC_DYNAMIC_NO_PIC 461 | NO 462 | GCC_GENERATE_DEBUGGING_SYMBOLS 463 | YES 464 | GCC_MODEL_TUNING 465 | NONE 466 | ICON 467 | $(ICON_NAME_DEBUG) 468 | ICON_FILE 469 | $(ICON_FILE_PATH)$(ICON) 470 | INFOPLIST_FILE 471 | openFrameworks-Info.plist 472 | INSTALL_PATH 473 | /Applications 474 | LIBRARY_SEARCH_PATHS 475 | $(inherited) 476 | PRODUCT_NAME 477 | $(TARGET_NAME)Debug 478 | WRAPPER_EXTENSION 479 | app 480 | 481 | isa 482 | XCBuildConfiguration 483 | name 484 | Debug 485 | 486 | E4B69B610A3A1757003C02F2 487 | 488 | baseConfigurationReference 489 | E4EB6923138AFD0F00A09F29 490 | buildSettings 491 | 492 | HEADER_SEARCH_PATHS 493 | 494 | $(OF_CORE_HEADERS) 495 | src 496 | ../../../addons/ofxSandLine/src 497 | 498 | COMBINE_HIDPI_IMAGES 499 | YES 500 | COPY_PHASE_STRIP 501 | YES 502 | FRAMEWORK_SEARCH_PATHS 503 | 504 | $(inherited) 505 | $(FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1) 506 | 507 | FRAMEWORK_SEARCH_PATHS_QUOTED_FOR_TARGET_1 508 | "$(SRCROOT)/../../../libs/glut/lib/osx" 509 | GCC_GENERATE_DEBUGGING_SYMBOLS 510 | YES 511 | GCC_MODEL_TUNING 512 | NONE 513 | ICON 514 | $(ICON_NAME_RELEASE) 515 | ICON_FILE 516 | $(ICON_FILE_PATH)$(ICON) 517 | INFOPLIST_FILE 518 | openFrameworks-Info.plist 519 | INSTALL_PATH 520 | /Applications 521 | LIBRARY_SEARCH_PATHS 522 | $(inherited) 523 | PRODUCT_NAME 524 | $(TARGET_NAME) 525 | WRAPPER_EXTENSION 526 | app 527 | baseConfigurationReference 528 | E4EB6923138AFD0F00A09F29 529 | 530 | isa 531 | XCBuildConfiguration 532 | name 533 | Release 534 | 535 | E4B69E1C0A3A1BDC003C02F2 536 | 537 | children 538 | 539 | E4B69E1D0A3A1BDC003C02F2 540 | E4B69E1E0A3A1BDC003C02F2 541 | E4B69E1F0A3A1BDC003C02F2 542 | 543 | isa 544 | PBXGroup 545 | path 546 | src 547 | sourceTree 548 | SOURCE_ROOT 549 | 550 | E4B69E1D0A3A1BDC003C02F2 551 | 552 | fileEncoding 553 | 30 554 | isa 555 | PBXFileReference 556 | lastKnownFileType 557 | sourcecode.cpp.cpp 558 | name 559 | main.cpp 560 | path 561 | src/main.cpp 562 | sourceTree 563 | SOURCE_ROOT 564 | 565 | E4B69E1E0A3A1BDC003C02F2 566 | 567 | explicitFileType 568 | sourcecode.cpp.cpp 569 | fileEncoding 570 | 30 571 | isa 572 | PBXFileReference 573 | name 574 | ofApp.cpp 575 | path 576 | src/ofApp.cpp 577 | sourceTree 578 | SOURCE_ROOT 579 | 580 | E4B69E1F0A3A1BDC003C02F2 581 | 582 | fileEncoding 583 | 30 584 | isa 585 | PBXFileReference 586 | lastKnownFileType 587 | sourcecode.c.h 588 | name 589 | ofApp.h 590 | path 591 | src/ofApp.h 592 | sourceTree 593 | SOURCE_ROOT 594 | 595 | E4B69E200A3A1BDC003C02F2 596 | 597 | fileRef 598 | E4B69E1D0A3A1BDC003C02F2 599 | isa 600 | PBXBuildFile 601 | 602 | E4B69E210A3A1BDC003C02F2 603 | 604 | fileRef 605 | E4B69E1E0A3A1BDC003C02F2 606 | isa 607 | PBXBuildFile 608 | 609 | E4B6FCAD0C3E899E008CF71C 610 | 611 | fileEncoding 612 | 30 613 | isa 614 | PBXFileReference 615 | lastKnownFileType 616 | text.plist.xml 617 | path 618 | openFrameworks-Info.plist 619 | sourceTree 620 | <group> 621 | 622 | E4B6FFFD0C3F9AB9008CF71C 623 | 624 | buildActionMask 625 | 2147483647 626 | files 627 | 628 | inputPaths 629 | 630 | isa 631 | PBXShellScriptBuildPhase 632 | outputPaths 633 | 634 | runOnlyForDeploymentPostprocessing 635 | 0 636 | shellPath 637 | /bin/sh 638 | shellScript 639 | mkdir -p "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Resources/" 640 | # Copy default icon file into App/Resources 641 | rsync -aved "$ICON_FILE" "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Resources/" 642 | # Copy libfmod and change install directory for fmod to run 643 | rsync -aved ../../../libs/fmodex/lib/osx/libfmodex.dylib "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Frameworks/"; 644 | install_name_tool -change @executable_path/libfmodex.dylib @executable_path/../Frameworks/libfmodex.dylib "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/MacOS/$PRODUCT_NAME"; 645 | # Copy GLUT framework (must remove for AppStore submissions) 646 | rsync -aved ../../../libs/glut/lib/osx/GLUT.framework "$TARGET_BUILD_DIR/$PRODUCT_NAME.app/Contents/Frameworks/" 647 | 648 | 649 | E4C2427710CC5ABF004149E2 650 | 651 | buildActionMask 652 | 2147483647 653 | dstPath 654 | 655 | dstSubfolderSpec 656 | 10 657 | files 658 | 659 | isa 660 | PBXCopyFilesBuildPhase 661 | runOnlyForDeploymentPostprocessing 662 | 0 663 | 664 | E4EB691F138AFCF100A09F29 665 | 666 | fileEncoding 667 | 4 668 | isa 669 | PBXFileReference 670 | lastKnownFileType 671 | text.xcconfig 672 | name 673 | CoreOF.xcconfig 674 | path 675 | ../../../libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig 676 | sourceTree 677 | SOURCE_ROOT 678 | 679 | E4EB6923138AFD0F00A09F29 680 | 681 | fileEncoding 682 | 4 683 | isa 684 | PBXFileReference 685 | lastKnownFileType 686 | text.xcconfig 687 | path 688 | Project.xcconfig 689 | sourceTree 690 | <group> 691 | 692 | E4EEB9AB138B136A00A80321 693 | 694 | containerPortal 695 | E4328143138ABC890047C5CB 696 | isa 697 | PBXContainerItemProxy 698 | proxyType 699 | 1 700 | remoteGlobalIDString 701 | E4B27C1410CBEB8E00536013 702 | remoteInfo 703 | openFrameworks 704 | 705 | E4EEB9AC138B136A00A80321 706 | 707 | isa 708 | PBXTargetDependency 709 | name 710 | openFrameworks 711 | targetProxy 712 | E4EEB9AB138B136A00A80321 713 | 714 | E4EEC9E9138DF44700A80321 715 | 716 | children 717 | 718 | E4EB691F138AFCF100A09F29 719 | E4328143138ABC890047C5CB 720 | 721 | isa 722 | PBXGroup 723 | name 724 | openFrameworks 725 | sourceTree 726 | <group> 727 | 728 | 729 | rootObject 730 | E4B69B4C0A3A1720003C02F2 731 | 732 | 733 | -------------------------------------------------------------------------------- /example-triangle/example-triangle.xcodeproj/xcshareddata/xcschemes/example-triangle Debug.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 32 | 33 | 39 | 40 | 41 | 42 | 51 | 52 | 58 | 59 | 60 | 61 | 62 | 63 | 69 | 70 | 76 | 77 | 78 | 79 | 81 | 82 | 85 | 86 | 87 | -------------------------------------------------------------------------------- /example-triangle/example-triangle.xcodeproj/xcshareddata/xcschemes/example-triangle Release.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 32 | 33 | 39 | 40 | 41 | 42 | 51 | 52 | 58 | 59 | 60 | 61 | 62 | 63 | 69 | 70 | 76 | 77 | 78 | 79 | 81 | 82 | 85 | 86 | 87 | -------------------------------------------------------------------------------- /example-triangle/openFrameworks-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | cc.openFrameworks.ofapp 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | APPL 15 | CFBundleSignature 16 | ???? 17 | CFBundleVersion 18 | 1.0 19 | CFBundleIconFile 20 | ${ICON} 21 | 22 | 23 | -------------------------------------------------------------------------------- /example-triangle/src/main.cpp: -------------------------------------------------------------------------------- 1 | #include "ofMain.h" 2 | #include "ofApp.h" 3 | 4 | //======================================================================== 5 | int main( ){ 6 | ofSetupOpenGL(1024,768,OF_WINDOW); // <-------- setup the GL context 7 | 8 | // this kicks off the running of my app 9 | // can be OF_WINDOW or OF_FULLSCREEN 10 | // pass in width and height too: 11 | ofRunApp(new ofApp()); 12 | 13 | } 14 | -------------------------------------------------------------------------------- /example-triangle/src/ofApp.cpp: -------------------------------------------------------------------------------- 1 | #include "ofApp.h" 2 | 3 | //-------------------------------------------------------------- 4 | void ofApp::setup(){ 5 | 6 | ofSetBackgroundColor(0); 7 | ofSetBackgroundAuto(false); 8 | 9 | //You can draw a triangle by defining three ofPoints... 10 | ofPoint a(ofGetWidth()/2, 100); 11 | ofPoint b(100, ofGetHeight()/2); 12 | ofPoint c(ofGetWidth() - 100, ofGetHeight()/2); 13 | 14 | triangle1 = ofxSandTriangle(a, b, c); 15 | triangle2 = ofxSandTriangle(a + ofPoint(0, 100), b + ofPoint(0, 100), c + ofPoint(0, 100)); 16 | 17 | //The triangles sides can be set to splines, borrowing from ofxSandLines... 18 | triangle2.forceSpline(); 19 | 20 | //The sides can be set individualy too! 21 | //triangle2.forceSpline(1); 22 | 23 | //The offset function can be applied to each edge separately... 24 | triangle2.setOffset(1, .5, 2, 2, .2); 25 | 26 | //...or to all the points... 27 | //triangle2.setOffset(4); 28 | 29 | } 30 | 31 | //-------------------------------------------------------------- 32 | void ofApp::update(){ 33 | 34 | //you can also get the position of each vertices as a vector. 35 | auto p = triangle2.getVertices(); 36 | 37 | 38 | cout << " ----------- " < ofxSandLine::getPoints(){ 102 | vector points; 103 | 104 | if(mode == SAND_MODE_LINE) getMidPoints(p1, p4); 105 | 106 | points.push_back(p1); 107 | points.push_back(p2); 108 | points.push_back(p3); 109 | points.push_back(p4); 110 | 111 | return points; 112 | 113 | } 114 | 115 | //------------------------------------------------ 116 | void ofxSandLine::draw(int _res){ 117 | 118 | update(_res); 119 | 120 | for(int i = 0; i ofxSandLine::makeSpline(ofPoint _p1, ofPoint _p2, ofPoint _p3, ofPoint _p4, int _res){ 173 | 174 | vector points(res + 1); 175 | 176 | ofMatrix4x4 controlPoints; 177 | ofMatrix4x4 splineMatrix; 178 | 179 | controlPoints._mat[0] = ofVec4f(_p1.x, _p2.x, _p3.x, _p4.x); 180 | controlPoints._mat[1] = ofVec4f(_p1.y, _p2.y, _p3.y, _p4.y); 181 | controlPoints._mat[2] = ofVec4f(_p1.z, _p2.z, _p3.z, _p4.z); 182 | controlPoints._mat[3] = ofVec4f(1.0, 1.0, 1.0, 1.0); 183 | 184 | splineMatrix._mat[0] = ofVec4f(1.0, -3.0, 3.0, -1.0); 185 | splineMatrix._mat[1] = ofVec4f(0, 3.0, -6.0, 3.0); 186 | splineMatrix._mat[2] = ofVec4f(0, 0, 3.0, -3.0); 187 | splineMatrix._mat[3] = ofVec4f(0, 0, 0, 1.0); 188 | 189 | for(int i = 0; i <=res; i++){ 190 | float t = float(i)/res; 191 | ofVec4f point = controlPoints * splineMatrix * ofVec4f(1, t, pow(t, 2), pow(t, 3)); 192 | points[i] = ofVec3f(point.x, point.y, point.z); 193 | } 194 | 195 | return points; 196 | 197 | } 198 | 199 | //------------------------------------------------ 200 | void ofxSandLine::getMidPoints(ofPoint _p1, ofPoint _p4){ 201 | 202 | midPoints[0] = (_p1 * 2.0/float(3)) + (_p4 * 1.0/float(3)); 203 | midPoints[1] = (_p1 * 1.0/float(3)) + (_p4 * 2.0/float(3)); 204 | 205 | } 206 | 207 | //------------------------------------------------ 208 | void ofxSandLine::setDefaults(){ 209 | 210 | breadth = 1; 211 | color = (255, 255, 255); 212 | maxSize = 1; 213 | maxAlpha = 64; 214 | 215 | offset[0] = 1.0; 216 | offset[1] = 1.0; 217 | offset[2] = 1.0; 218 | offset[3] = 1.0; 219 | 220 | } 221 | 222 | //-------------------------------------------------- 223 | //-------------------------------------------------- 224 | ofxSandTriangle::ofxSandTriangle(){ 225 | 226 | } 227 | 228 | //--------------------------------------------------- 229 | ofxSandTriangle::ofxSandTriangle(ofPoint _p1, ofPoint _p2, ofPoint _p3){ 230 | 231 | a = ofxSandLine(_p1, _p2); 232 | b = ofxSandLine(_p2, _p3); 233 | c = ofxSandLine(_p3, _p1); 234 | 235 | } 236 | 237 | //--------------------------------------------------- 238 | void ofxSandTriangle::draw(int _res){ 239 | 240 | auto aP = a.getPoints(); 241 | auto bP = b.getPoints(); 242 | auto cP = c.getPoints(); 243 | 244 | b.setPoint(1, (bP[0] + aP[3])/2); 245 | c.setPoint(1, (cP[0] + bP[3])/2); 246 | a.setPoint(1, (aP[0] + cP[3])/2); 247 | 248 | a.draw(_res); 249 | b.draw(_res); 250 | c.draw(_res); 251 | 252 | } 253 | //--------------------------------------------------- 254 | void ofxSandTriangle::setOffset(int _edge, float _o0, float _o1, float _o2, float _o3){ 255 | 256 | switch(_edge){ 257 | case 1: 258 | a.setOffset(_o0, _o1, _o2, _o3); 259 | break; 260 | case 2: 261 | b.setOffset(_o0, _o1, _o2, _o3); 262 | break; 263 | case 3: 264 | c.setOffset(_o0, _o1, _o2, _o3); 265 | break; 266 | default: 267 | cout << "unknow edge" << endl; 268 | break; 269 | } 270 | } 271 | 272 | //--------------------------------------------------- 273 | void ofxSandTriangle::setOffset(float _f){ 274 | 275 | a.setOffset(_f); 276 | b.setOffset(_f); 277 | c.setOffset(_f); 278 | 279 | } 280 | 281 | //--------------------------------------------------- 282 | vector ofxSandTriangle::getVertices(){ 283 | 284 | vector vertices; 285 | vertices.resize(3); 286 | 287 | vertices[0] = a.getPoints()[0]; 288 | vertices[1] = b.getPoints()[0]; 289 | vertices[2] = c.getPoints()[0]; 290 | 291 | return vertices; 292 | 293 | } 294 | //--------------------------------------------------- 295 | void ofxSandTriangle::setBreadth(float _b){ 296 | 297 | a.setBreadth(_b); 298 | b.setBreadth(_b); 299 | c.setBreadth(_b); 300 | 301 | } 302 | 303 | //--------------------------------------------------- 304 | void ofxSandTriangle::setColor(ofColor _c){ 305 | a.setColor(_c); 306 | b.setColor(_c); 307 | c.setColor(_c); 308 | } 309 | 310 | //--------------------------------------------------- 311 | void ofxSandTriangle::setMaxSize(int _maxSize){ 312 | a.setMaxSize(_maxSize); 313 | b.setMaxSize(_maxSize); 314 | c.setMaxSize(_maxSize); 315 | 316 | } 317 | 318 | //--------------------------------------------------- 319 | void ofxSandTriangle::setMaxAlpha(int _maxAlpha){ 320 | a.setMaxAlpha(_maxAlpha); 321 | b.setMaxAlpha(_maxAlpha); 322 | c.setMaxAlpha(_maxAlpha); 323 | 324 | } 325 | 326 | //--------------------------------------------------- 327 | void ofxSandTriangle::forceSpline(){ 328 | a.setMode(SAND_MODE_SPLINE); 329 | b.setMode(SAND_MODE_SPLINE); 330 | c.setMode(SAND_MODE_SPLINE); 331 | } 332 | //--------------------------------------------------- 333 | void ofxSandTriangle::forceSpline(int _side){ 334 | switch(_side){ 335 | case 1: 336 | a.setMode(SAND_MODE_SPLINE); 337 | break; 338 | case 2: 339 | b.setMode(SAND_MODE_SPLINE); 340 | break; 341 | case 3: 342 | c.setMode(SAND_MODE_SPLINE); 343 | break; 344 | default: 345 | cout << "Side specification not valid, use 1, 2 or 3" << endl; 346 | } 347 | } 348 | 349 | //--------------------------------------------------- 350 | //--------------------------------------------------- 351 | ofxSandRectangle::ofxSandRectangle(){ 352 | 353 | } 354 | 355 | //--------------------------------------------------- 356 | ofxSandRectangle::ofxSandRectangle(ofPoint _start, float _width, float _height){ 357 | 358 | ofPoint v1, v2, v3, v4; 359 | 360 | v1 = _start; 361 | v2 = _start + ofPoint(_width, 0); 362 | v3 = v2 + ofPoint(0, _height); 363 | v4 = v1 + ofPoint(0, _height); 364 | 365 | a = ofxSandLine(v1, v2); 366 | b = ofxSandLine(v2, v3); 367 | c = ofxSandLine(v3, v4); 368 | d = ofxSandLine(v4, v1); 369 | } 370 | 371 | //--------------------------------------------------- 372 | void ofxSandRectangle::draw(int _res){ 373 | 374 | auto aP = a.getPoints(); 375 | auto bP = b.getPoints(); 376 | auto cP = c.getPoints(); 377 | auto dP = d.getPoints(); 378 | 379 | b.setPoint(1, (aP[3] + bP[0])/2.0); 380 | c.setPoint(1, (bP[3] + cP[0])/2.0); 381 | d.setPoint(1, (cP[3] + dP[0])/2.0); 382 | a.setPoint(1, (dP[3] + aP[0])/2.0); 383 | 384 | a.draw(_res); 385 | b.draw(_res); 386 | c.draw(_res); 387 | d.draw(_res); 388 | } 389 | //--------------------------------------------------- 390 | void ofxSandRectangle::setOffset(int _edge, float _o0, float _o1, float _o2, float _o3){ 391 | switch(_edge){ 392 | case 1: 393 | a.setOffset(_o0, _o1, _o2, _o3); 394 | break; 395 | case 2: 396 | b.setOffset(_o0, _o1, _o2, _o3); 397 | break; 398 | case 3: 399 | c.setOffset(_o0, _o1, _o2, _o3); 400 | break; 401 | case 4: 402 | d.setOffset(_o0, _o1, _o2, _o3); 403 | break; 404 | default: 405 | cout << "unknow edge" << endl; 406 | break; 407 | } 408 | 409 | } 410 | //--------------------------------------------------- 411 | void ofxSandRectangle::setOffset(float _f){ 412 | 413 | a.setOffset(_f); 414 | b.setOffset(_f); 415 | c.setOffset(_f); 416 | d.setOffset(_f); 417 | 418 | } 419 | //--------------------------------------------------- 420 | void ofxSandRectangle::forceSpline(){ 421 | 422 | a.setMode(SAND_MODE_SPLINE); 423 | b.setMode(SAND_MODE_SPLINE); 424 | c.setMode(SAND_MODE_SPLINE); 425 | d.setMode(SAND_MODE_SPLINE); 426 | 427 | } 428 | //--------------------------------------------------- 429 | void ofxSandRectangle::forceSpline(int _edge){ 430 | 431 | switch(_edge){ 432 | case 1: 433 | a.setMode(SAND_MODE_SPLINE); 434 | break; 435 | case 2: 436 | b.setMode(SAND_MODE_SPLINE); 437 | break; 438 | case 3: 439 | c.setMode(SAND_MODE_SPLINE); 440 | break; 441 | case 4: 442 | d.setMode(SAND_MODE_SPLINE); 443 | break; 444 | default: 445 | cout << "Unknow edge, use 1-2-3-4" << endl; 446 | } 447 | 448 | } 449 | //--------------------------------------------------- 450 | void ofxSandRectangle::setBreadth(float _b){ 451 | 452 | a.setBreadth(_b); 453 | b.setBreadth(_b); 454 | c.setBreadth(_b); 455 | d.setBreadth(_b); 456 | 457 | } 458 | //--------------------------------------------------- 459 | void ofxSandRectangle::setMaxAlpha(int _maxAlpha){ 460 | a.setMaxAlpha(_maxAlpha); 461 | b.setMaxAlpha(_maxAlpha); 462 | c.setMaxAlpha(_maxAlpha); 463 | d.setMaxAlpha(_maxAlpha); 464 | } 465 | 466 | //--------------------------------------------------- 467 | void ofxSandRectangle::setColor(ofColor _c){ 468 | a.setColor(_c); 469 | b.setColor(_c); 470 | c.setColor(_c); 471 | d.setColor(_c); 472 | 473 | } 474 | 475 | //--------------------------------------------------- 476 | void ofxSandRectangle::setMaxSize(int _maxSize){ 477 | a.setMaxSize(_maxSize); 478 | b.setMaxSize(_maxSize); 479 | c.setMaxSize(_maxSize); 480 | d.setMaxSize(_maxSize); 481 | 482 | 483 | } 484 | -------------------------------------------------------------------------------- /src/ofxSandLine.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | #include "ofMain.h" 3 | 4 | //inspired by 'Grains of Sand' 5 | //http://inconvergent.net/grains-of-sand/ 6 | 7 | enum mode{ 8 | SAND_MODE_LINE = 0, 9 | SAND_MODE_SPLINE = 1 10 | }; 11 | 12 | class ofxSandLine { 13 | public: 14 | 15 | ofxSandLine(); //default constructor 16 | ofxSandLine(ofPoint _p1, ofPoint _p2); //constructor for a straight line 17 | ofxSandLine(ofPoint _p1, ofPoint _p2, ofPoint _p3, ofPoint _p4); //constructor for a bezier spline 18 | 19 | void draw(int _res); 20 | 21 | void setOffset(float _offset); 22 | void setOffset(float _o0, float _o1, float _o2, float _o3); 23 | void setBreadth(float _breadth); 24 | void setMode(mode _mode); 25 | void setColor(ofColor _c); 26 | void setMaxSize(int _maxSize); 27 | void setMaxAlpha(int _maxAlpha); 28 | 29 | vector getPoints(); 30 | 31 | void setPoint(int _index, ofPoint _p); 32 | 33 | private: 34 | int res; 35 | vector grains; 36 | 37 | void update(int _res); 38 | 39 | ofPoint p1, p2, p3, p4; 40 | float offset [4]; 41 | float breadth; 42 | int maxSize; 43 | int maxAlpha; 44 | ofColor color; 45 | 46 | int mode; 47 | vector points; 48 | vector makeSpline(ofPoint _p1, ofPoint _p2, ofPoint _p3, ofPoint _p4, int _res); 49 | 50 | ofPoint midPoints [2]; 51 | void getMidPoints(ofPoint _p1, ofPoint _p4); 52 | 53 | void setDefaults(); 54 | 55 | }; 56 | 57 | //-------------- 58 | 59 | class ofxSandTriangle { 60 | public: 61 | ofxSandTriangle(); 62 | ofxSandTriangle(ofPoint _p1, ofPoint _p2, ofPoint _p3); 63 | 64 | void draw(int _res); 65 | void setOffset(int _edge, float _o0, float _o1, float _o2, float _o3); 66 | void setOffset(float _f); 67 | 68 | void forceSpline(); 69 | void forceSpline(int _side); 70 | 71 | vector getVertices(); 72 | 73 | void setBreadth(float _b); 74 | void setColor(ofColor _c); 75 | void setMaxSize(int _maxSize); 76 | void setMaxAlpha(int _maxAlpha); 77 | 78 | private: 79 | ofxSandLine a, b, c; 80 | }; 81 | 82 | //-------------- 83 | 84 | class ofxSandRectangle { 85 | public: 86 | ofxSandRectangle(); 87 | ofxSandRectangle(ofPoint _start, float _width, float _height); 88 | 89 | void draw(int _res); 90 | void setOffset(int _edge, float _o0, float _o1, float _o2, float _o3); 91 | void setOffset(float _f); 92 | 93 | void forceSpline(); 94 | void forceSpline(int _edge); 95 | 96 | void setBreadth(float _b); 97 | void setMaxAlpha(int _maxAlpha); 98 | void setMaxSize(int _maxSize); 99 | void setColor(ofColor c); 100 | 101 | 102 | private: 103 | ofxSandLine a, b, c, d; 104 | }; 105 | --------------------------------------------------------------------------------