-
Notifications
You must be signed in to change notification settings - Fork 33
Context Free is a program that generates images from written instructions called a grammar. The program follows the instructions in a few seconds to create images that can contain millions of shapes.
License
MtnViewJohn/context-free
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
*** Context Free *** version 3.3 by Chris Coyne, John Horigan and Mark Lentczner Context Free Copyright 2005-2018 Mark Lentczner and John Horigan CFDG Copyright 2005 Chris Coyne Anti-Grain Geometry library Copyright 2002-2005 Maxim Shemanarev ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ DISTRIBUTION & LICENSE Context Free is released under the GNU license. Context Free is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ GENERAL NOTES ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ FILE TREE ./ - top level: this file, license, Makefile, Xcode project and Windows CLI solution ./input/ - sample input files ./input/tests - test input files ./src-agg/ - a subset of the Anti_Grain Geometry sources ./src-common/ - the CFDG engine ./src-ffmpeg/ - FFmpeg resources ./src-ffmpeg/include/ - FFmpeg include files ./src-ffmpeg/lib/ - FFmpeg libraries for Linux ./src-net/ - Windows .Net specific sources ./src-osx/ - Mac specific sources ./src-scintilla - Mac Scintilla sources ./src-unix/ - Unix/Posix specific sources ./src-win/ - Windows specific sources ./src-win/derived/ - pre-built output from flex and yacc for folks that don't have those tools available ./src-win/icon/ - Explorer icons ./src-win/res/ - UI icons ./src-win/win-install/ - files for creating NSIS installer EXE ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ MACINTOSH BUILD NOTES Requires Xcode 9 & Mac OS X 10.7 (Lion). Developed with XCode 9/10 and Mac OS X 10.14 (Mojave), has not been tested with older versions of XCode or Mac OS X. The Xcode project file is in the top directory: ./Context Free.xcodeproj ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ WINDOWS GUI BUILD NOTES Requires Visual Studio 2019 or later. The VS2019 solution file is at ./src-net/ContextFreeNetVS11.sln If you modify cfdg.l or cfdg.ypp then you must rebuild the parser files in src-win/derived. If you have Cygwin or a similar Posix environment installed or have access to a Unix/Linux or Mac system then cd to src-win/derived and type 'make' (you will need bison and flex too). ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ WINDOWS CLI (command line) BUILD NOTES Requires Visual Studio 2019 or later. The VS2019 CLI solution file is at ./ContextFreeCLIVS11.sln If you modify cfdg.l or cfdg.ypp then you must rebuild the parser files in src-win/derived. If you have Cygwin or a similar Posix environment installed or have access to a Unix/Linux or Mac system then cd to src-win/derived and type 'make' (you will need bison and flex too). ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ BSD/LINUX/UNIX/POSIX BUILD NOTES You will need a c++ compiler (gcc 7 or clang 4), flex 2.6 (not lex), bison 3.0, the libpng library, and libicu library (International Components for Unicode). Most of this should be installed or easily available on any modern operating system distribution. For libpng and libicu you will need the full installation of header files. The Debian packages libpng-dev and libicu-dev provide these. Debian/Ubuntu derived systems also need the libfl-dev package in order to build flex output. If you need it, libpng can be found here: http://libpng.org/pub/png/libpng.html The home for libicu is at: http://site.icu-project.org/ The Makefile assumes that libpng and libicu are installed either with the system libraries or at /usr/local/lib. If either library is installed in a different location then you must update the LIB_DIRS variable in the Makefile with this location. From the top level, you should just run: $ make You'll see a warning about "mktemp" and "mkstemp" during the link step. This can be ignored. To run the program, try something like: $ ./cfdg -s 500 input/mtree.cfdg mtree.png Run it with -? to get a usage summary: $ ./cfdg -? 'make check' will test your compiled cfdg executable. 'sudo make install' will install cfdg and the cfdg.1 man page in /usr/local. ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ FFmpeg BUILD NOTES Check out README.ffmpeg for building ffmpeg and enabling ffmpeg support
About
Context Free is a program that generates images from written instructions called a grammar. The program follows the instructions in a few seconds to create images that can contain millions of shapes.
Topics
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published