diff --git a/.github/ISSUE_TEMPLATE/1_bug_report.yml b/.github/ISSUE_TEMPLATE/1_bug_report.yml new file mode 100644 index 000000000..e26628bd8 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/1_bug_report.yml @@ -0,0 +1,78 @@ +name: 🐛 Found a Bug +description: Report broken or incorrect behavior on the processing.org website. +body: +- type: dropdown + id: labels + attributes: + label: Select the most appropriate label(s) for this issue. + description: You may select more than one. + multiple: true + options: + - Accessibility + - Books + - Download + - Examples + - Homepage + - Libraries + - Reference + - Translation + - Tutorials + - Other (specify if possible) + validations: + required: false +- type: textarea + attributes: + label: Describe the bug + description: A clear and concise description of what the bug is. + validations: + required: true +- type: textarea + attributes: + label: Expected behavior + description: A clear and concise description of what you expected to happen. + validations: + required: true +- type: textarea + attributes: + label: Screenshots + description: If applicable, add a screenshot or screen capture to help explain your problem. + validations: + required: false +- type: dropdown + id: Browser + attributes: + label: Browser + description: In which browser(s) have you observed this issue? + multiple: true + options: + - Firefox + - Chrome + - Safari + - Microsoft Edge + - Other (please specify) + validations: + required: false +- type: input + attributes: + label: Browser version + description: In the address bar, on Chrome enter "chrome://version", on Firefox enter "about:support". On Safari, use "About Safari". + validations: + required: false +- type: input + attributes: + label: Operating system + description: "Ex: Windows/MacOSX/Linux/Android/iOS along with version." + validations: + required: false +- type: input + attributes: + label: Smartphone details + description: "If the issue is specific to mobile, please specify the device you are using (e.g. FairPhone 5, iPhone 14 Pro, Pixel 6a)" + validations: + required: false +- type: textarea + attributes: + label: Additional context + description: Add any other context about the problem here. + validations: + required: false diff --git a/.github/ISSUE_TEMPLATE/2_content_error.yml b/.github/ISSUE_TEMPLATE/2_content_error.yml new file mode 100644 index 000000000..8056e86ea --- /dev/null +++ b/.github/ISSUE_TEMPLATE/2_content_error.yml @@ -0,0 +1,70 @@ +name: 📝 Content Corrections +description: Report typos, content errors, or factual inaccuracies on the processing.org website. +body: +- type: dropdown + id: error_type + attributes: + label: Select the type of content error. + description: Choose the most appropriate type of content issue you are reporting. + multiple: false + options: + - Typo + - Grammatical Error + - Factual Mistake + - Wrong image + - Other content error (please specify) + validations: + required: true +- type: dropdown + id: labels + attributes: + label: Section + description: On which part of the website does the error appear? + multiple: true + options: + - Books + - Download + - Examples + - Homepage + - Libraries + - Reference + - Tutorials + - Other (specify if possible) +- type: input + attributes: + label: Location of the error + description: Include the URL or title of the page where the error occurs. + validations: + required: true +- type: textarea + attributes: + label: Describe the error + description: Provide a clear and detailed description of the error. + validations: + required: true +- type: textarea + attributes: + label: Suggested correction + description: If possible, suggest a correction or clarify how the content should be amended. + validations: + required: false + validations: + required: true +- type: input + attributes: + label: Language + description: If applicable, specify the language of the content where the error was found. + validations: + required: false +- type: textarea + attributes: + label: Screenshots or references + description: If necessary, add screenshots or references to help clarify the issue. + validations: + required: false +- type: textarea + attributes: + label: Additional context + description: Add any other context or information that could assist in resolving this issue. + validations: + required: false diff --git a/.github/ISSUE_TEMPLATE/3_enhancement.yml b/.github/ISSUE_TEMPLATE/3_enhancement.yml new file mode 100644 index 000000000..e17743270 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/3_enhancement.yml @@ -0,0 +1,39 @@ +name: 🚀 Enhancement Proposal +description: This template is for suggesting enhancements or new features for the Processing website. +labels: [enhancement] +body: +- type: dropdown + id: labels + attributes: + label: Which area of the website does this enhancement relate to? + description: You may select more than one.. + multiple: true + options: + - Accessibility + - Books + - Download + - Examples + - Homepage + - Libraries + - Reference + - Translation + - Tutorials + - Other (specify if possible) +- type: textarea + attributes: + label: Describe the enhancement + description: A clear and concise description of what you want to improve or add to the Processing website. + validations: + required: true +- type: textarea + attributes: + label: Why is this enhancement important? + description: Explain why this enhancement is necessary or beneficial for the Processing community. + validations: + required: true +- type: textarea + attributes: + label: Additional context + description: Add any other context, mockups, or screenshots that help explain the proposal. + validations: + required: false diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 000000000..2496fb499 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,14 @@ +blank_issues_enabled: false +contact_links: + - name: 💙 Processing 4 Issues + url: https://github.com/processing/processing4/issues + about: Report issues with Processing 4 here. + - name: 📚 Examples Issues + url: https://github.com/processing/processing-examples/issues + about: Report issues with the official Processing examples here. + - name: 💬 Forum + url: https://discourse.processing.org/ + about: Have other questions about using Processing? Ask them here! + - name: 🌸 p5.js Issues + url: https://github.com/processing/p5.js/issues + about: Report issues with p5.js here. diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 58137b257..879a926b7 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -3,16 +3,16 @@ name: Deploy Website on: workflow_dispatch: inputs: - version: - description: 'The version of the website used for the GitHub release' + title: + description: 'The name of the GitHub release' type: string required: true description: - description: 'The description of changes used in the GitHub release changelog' + description: 'The description used in the GitHub release (typically a changelog)' type: string required: true make_release: - description: 'Make a GitHub release with a referenze.zip after uploading the website' + description: 'Make a GitHub release with a reference.zip after uploading the website' type: boolean required: true default: true @@ -20,11 +20,11 @@ jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 - - name: Use Node.js 16.x - uses: actions/setup-node@v1 + - uses: actions/checkout@v3 + - name: Use Node.js 16 + uses: actions/setup-node@v3 with: - node-version: 16.x + node-version: 16 - name: Install dependencies run: npm ci - name: Deploy with static @@ -35,11 +35,14 @@ jobs: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Make reference.zip run: npm run zip + - name: Set Tag Name + run: | + echo "RELEASE_DATE=$(date '+%Y-%m-%d-%H%M%S')" >> ${GITHUB_ENV} - name: Create release uses: softprops/action-gh-release@v1 if: ${{ inputs.make_release }} with: files: reference.zip body: ${{ inputs.description }} - name: 'Website ${{ inputs.version }}' - tag_name: ${{ inputs.version }} + name: ${{ inputs.title }} + tag_name: ${{ env.RELEASE_DATE }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 000000000..9c935bbda --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,33 @@ +name: Update Processing Releases + +on: + workflow_dispatch: + +permissions: + contents: write + pull-requests: write + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Use Node.js 20 + uses: actions/setup-node@v4 + with: + node-version: 20 + - name: Install dependencies + run: npm install + - name: Fetch releases + run: | + npm run fetchReleases + env: + GITHUB_TOKEN: ${{ secrets.PAT_TOKEN }} + - name: Create Pull Request + uses: peter-evans/create-pull-request@v7 + with: + title: 'Update releases' + branch: update-releases + add-paths: | + content/download/*.json + diff --git a/.gitignore b/.gitignore index 417a3f166..dbaaf102f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,8 +1,152 @@ -node_modules +# Created by https://www.toptal.com/developers/gitignore/api/node,gatsby +# Edit at https://www.toptal.com/developers/gitignore?templates=node,gatsby + +### Gatsby ### +node_modules/ + +.cache/ public -.DS_Store + +src/gatsby-types.d.ts + +### Node ### +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +lerna-debug.log* +.pnpm-debug.log* + +# Diagnostic reports (https://nodejs.org/api/report.html) +report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json + +# Runtime data +pids +*.pid +*.seed +*.pid.lock + +# Directory for instrumented libs generated by jscoverage/JSCover +lib-cov + +# Coverage directory used by tools like istanbul +coverage +*.lcov + +# nyc test coverage +.nyc_output + +# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) +.grunt + +# Bower dependency directory (https://bower.io/) +bower_components + +# node-waf configuration +.lock-wscript + +# Compiled binary addons (https://nodejs.org/api/addons.html) +build/Release + +# Dependency directories +jspm_packages/ + +# Snowpack dependency directory (https://snowpack.dev/) +web_modules/ + +# TypeScript cache +*.tsbuildinfo + +# Optional npm cache directory +.npm + +# Optional eslint cache +.eslintcache + +# Optional stylelint cache +.stylelintcache + +# Microbundle cache +.rpt2_cache/ +.rts2_cache_cjs/ +.rts2_cache_es/ +.rts2_cache_umd/ + +# Optional REPL history +.node_repl_history + +# Output of 'npm pack' +*.tgz + +# Yarn Integrity file +.yarn-integrity + +# dotenv environment variable files +.env +.env.development.local +.env.test.local +.env.production.local +.env.local + +# parcel-bundler cache (https://parceljs.org/) .cache +.parcel-cache + +# Next.js build output +.next +out + +# Nuxt.js build / generate output +.nuxt +dist + +# Gatsby files +# Comment in the public line in if your project uses Gatsby and not Next.js +# https://nextjs.org/blog/next-9-1#public-directory-support +# public + +# vuepress build output +.vuepress/dist + +# vuepress v2.x temp and cache directory +.temp -package-lock.json +# Docusaurus cache and generated files +.docusaurus -yarn.lock +# Serverless directories +.serverless/ + +# FuseBox cache +.fusebox/ + +# DynamoDB Local files +.dynamodb/ + +# TernJS port file +.tern-port + +# Stores VSCode versions used for testing VSCode extensions +.vscode-test + +# yarn v2 +.yarn/cache +.yarn/unplugged +.yarn/build-state.yml +.yarn/install-state.gz +.pnp.* + +### Node Patch ### +# Serverless Webpack directories +.webpack/ + +# Optional stylelint cache + +# SvelteKit build / generate output +.svelte-kit + +# End of https://www.toptal.com/developers/gitignore/api/node,gatsby +.DS_Store +.env.development diff --git a/CODE-OF-CONDUCT.md b/CODE-OF-CONDUCT.md new file mode 100644 index 000000000..59c3e6237 --- /dev/null +++ b/CODE-OF-CONDUCT.md @@ -0,0 +1,60 @@ +# Processing Code of Conduct + +## Who We Are + +Processing is a flexible software sketchbook and a language for learning how to code. Since 2001, Processing has promoted software literacy within the visual arts and visual literacy within technology. Processing is an open source project and maintained by a network of contributors located around the world. + +We make room for people to get involved in the project at any point they wish. This means that we: + +* Welcome contributors at any stage of their programming journey, from newcomers to professionals; +* Do not assume knowledge or imply there are things that somebody should know; +* Understand that people are the experts of their own experiences, and bring a variety of valid perspectives to the development of open source projects; +* Know that contribution is not just limited to code, and can also include working on documentation, filing issues and bug reports, and other important forms of input; +* Work to offer help and guidance when we are able to do so. + +## Our Standards + +All developers who contribute to the Processing project agree to abide by the following code of conduct. + +### Respect other people + +Treat other community members with respect and kindness. Examples of behavior that contributes to a positive environment for our community include: + +* Demonstrating empathy toward other people, and assuming best intentions; +* Being mindful in how we approach and interact with others; +* Being respectful of differing opinions, viewpoints, and experiences; +* Listening in times of conflict, and communicating as best we can while acknowledging each other's feelings; +* Giving and gracefully accepting constructive feedback; +* Accepting responsibility and apologizing to those affected by our mistakes, and learning from the experience; +* Making space for everyone to be heard. + +### Be mindful of how you engage with others + +The following behavior will not be tolerated: + +* The use of sexualized or violent language or imagery; +* Unwelcome sexual attention or advances of any kind; +* Offensive comments related to race, class, gender identity and expression, neuro-type, ability, religion and culture, age, skill level, occupation, background, or political opinion; +* Public or private harassment; +* Publishing others' private information, such as a physical or email address, without their explicit permission; +* Any other conduct which could reasonably be considered inappropriate in a professional setting. + +When in doubt, if it could make people uncomfortable, don't do it. + +### Be open minded + +We understand that technology changes all the time, and that contributors may bring new or different views based on their own experiences. Be open minded when engaging with other people and their ideas, and embrace the new or unfamiliar as opportunities for positive change. + +### Be considerate + +We focus on what is best not just for us as individuals, but for the health of the overall community. Be considerate of other people, and think about how your contributions will affect the Processing community as a whole. + +## Enforcement + +If you believe someone is violating the Code of Conduct, we ask that you report it by emailing safety@processing.org. Please include your name and a description of the incident, and we will get back to you ASAP. + +Sometimes, participants violating the Code of Conduct are unaware that their behavior is harmful, and an open conversation clears things up to move forward. However, if a participant continues with the behavior, the Processing team may take any action they deem appropriate, up to and including expulsion from all community spaces and identification of the participant as a harasser to other Processing members or the general public. + +## Attribution + +This Code of Conduct is adapted from the [Contributor Covenant version 2.1](https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1]); the [p5.js Code of Conduct](https://github.com/processing/p5.js/blob/main/CODE_OF_CONDUCT.md); and the [ml5.js Code of Conduct](https://github.com/ml5js/Code-of-Conduct). The first version of this CoC was built by Roopa Vasudevan at OSACC 2024. diff --git a/LICENSE-code b/LICENSE-code new file mode 100644 index 000000000..a80e7869c --- /dev/null +++ b/LICENSE-code @@ -0,0 +1,278 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + +Copyright (C) 1989, 1991 Free Software Foundation, Inc. +59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +Everyone is permitted to copy and distribute verbatim copies +of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 1. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. \ No newline at end of file diff --git a/LICENSE b/LICENSE-gatsby similarity index 95% rename from LICENSE rename to LICENSE-gatsby index 7e964c1ee..23eb9b646 100755 --- a/LICENSE +++ b/LICENSE-gatsby @@ -11,4 +11,4 @@ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -PERFORMANCE OF THIS SOFTWARE. +PERFORMANCE OF THIS SOFTWARE. \ No newline at end of file diff --git a/README.md b/README.md index 4bc3434ad..959fd29ae 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,60 @@ # Processing Website -This repo holds the code for the [processing.org](https://processing.org) website. The website is built with [Gatsby](https://www.gatsbyjs.com/). +[![Netlify Status](https://api.netlify.com/api/v1/badges/e1d72dc4-ad96-4b12-bc25-4ec2aa532ad7/deploy-status)](https://app.netlify.com/sites/java-processing-faf822/deploys) -## Running the site locally +This repo holds the code for the [processing.org](https://processing.org) website. The website is built with [Gatsby](https://www.gatsbyjs.com/) and hosted on [Netlify](https://www.netlify.com/). -To run the site locally, make sure that you have Node.js installed (`v12` minimum). +We welcome contributions from the community to help improve the site! -1. Clone down this repo and `cd` into the folder via the command-line -2. Run `npm install` to install the dependencies -3. Run `npm run dev` to run the development server +## How To Contribute -Now open [localhost:8000](http://localhost:8000) in your browser of choice. +By contributing to this repository you agree to follow our community guidelines. Before getting started, please read our [Code of Conduct](https://github.com/processing/processing-website/blob/main/CODE-OF-CONDUCT.md). + +If this is your first time contributing on GitHub, check out this [guide for first contributions](https://github.com/firstcontributions/first-contributions). + +To contribute to the Processing website, you'll need to identify an issue, get assigned, fork this repo, set up the project on your local machine, make and test your changes, and then submit a pull request. + +### Step 1. Get assigned to an issue + +Look at the [issues page](https://github.com/processing/processing-website/issues) for existing issues you can help with. Issues [labelled Good First Issue or Help Wanted](https://github.com/processing/processing-website/issues?q=is%3Aissue+is%3Aopen+label%3A%22Help+Wanted%22%2C%22Good+First+Issue%22+) are a good place to start. Or if you noticed an issue with the processing.org website and it hasn't been reported yet, you can [open a new issue](https://github.com/processing/processing-website/issues/new/choose). + +Once you've found an issue you'd like to work on, leave a comment asking to be assigned. + +> [!NOTE] +> If this is your first contribution to our repositories, please include a brief explanation of how you plan to approach the issue. This helps us understand your thinking and gives us an opportunity to discuss the implementation. Note that **we do not auto-assign issues**, so comments that only say "please assign" without further context may be overlooked. + +### Step 2. Fork the Repository + +1. Click the "Fork" button in the top-right corner and follow the instructions to create a copy of this repository in your GitHub account. +2. Clone the forked repository to your local machine. +3. Navigate to the project folder using the command line, or open the project in your editor of choice and open the built-in terminal. + +### Step 3. Set up Your Local Environment + +Make sure to [install Node.js](https://nodejs.org/en/download/package-manager) (`v12` or higher) if it is not already installed. + +1. Run `npm install` to install the necessary dependencies. +2. Run `npm run dev` to start the development server. +3. Once the build process is complete, open [localhost:8000](http://localhost:8000) in your browser to view the site. +4. Make your changes to the code. +5. Saving your files will automatically trigger a rebuild and update the local site. + +### Step 4. Test Your Changes Locally + +1. Make sure your changes are working locally and that they fixed the issue. +2. Make sure you only made the changes necessary to solve the issue. This will improve your chances of your PR getting merged. + +### Step 5. Submit A Pull Request + +> [!IMPORTANT] +> Before submitting a pull request, please [ask to be assigned](#step-1-get-assigned-to-an-issue) to the corresponding issue. If someone else is already assigned or has shared that they’re working on it, we ask that you wait or choose another issue. This helps us avoid duplicated efforts and respect each other's time. PRs submitted without assignment may be closed without a review. + +1. Commit your changes with a descriptive message. +2. Push the changes to your forked repository on GitHub. +3. Go to the original [Processing website repository](https://github.com/processing/processing-website) on GitHub and click the "Compare & pull request" button. +4. Give your Pull Request a descriptive title. +5. Write a clear description of the changes you made and why they should be merged. Link to the issue you are solving. +6. Submit the pull request for review. ## Editing content @@ -42,31 +86,52 @@ When translating the content to a new language you need to edit the [`i18n/confi ## Writing code -- [Writing CSS](/docs/css.md) +- **CSS:** [read about our stylesheets](/docs/css.md) ## Deploying the site -The website is set up to deploy itself whenever the "Deploy Website" GitHub action is run. This triggers a new deploy from the `main` branch where the website is built, uploaded, and a new GitHub Release is created with a `reference.zip` file containing the contents of the website for loading in the IDE. +Since 2024, this repository is deployed and built automatically on Netlify. Merged Pull Requests to main will trigger a deployment. No further action is necessary. -1. Go to [Actions](https://github.com/processing/processing-website/actions) -2. Click "Deploy Website" in the left sidebar -3. Click "Run workflow" on the right -4. Fill in the details and click the green "Run workflow" button. +## Join the Processing community +We proudly host an active and vibrant community on our [Processing Discourse Forum](https://discourse.processing.org/). Here you can find engaging discussions, ask questions, share your projects, and interact with like-minded Processing enthusiasts of all experience levels. -Note that it's possible to deploy the website with or without making a GitHub release. For this, toggle the checkbox under "Run workflow". +[![Discourse Users](https://img.shields.io/discourse/users?server=https%3A%2F%2Fdiscourse.processing.org)](https://discourse.processing.org/) + +## Licenses + +The content and the code of the Processing website are separately licensed. + +- The **content**, including the reference, is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License ([CC-BY-NC-SA-4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/)). +- The **code** that structures the website is licensed under the GNU General Public License version 2 ([GPL-2.0](https://www.gnu.org/licenses/old-licenses/gpl-2.0.html)). This applies to the website code written by our team and contributors from the Processing community. +- The **examples** without a credit line or credited to Daniel Shiffman are in the public domain. Copyright for other credited examples remain with the original authors. See the [processing-examples](https://github.com/processing/processing-examples/) repo for details. +- **Gatsby**, the framework used for this website, is licensed under the Zero-Clause BSD License ([0BSD](https://opensource.org/license/0BSD)). + +For licensing information about the Processing core library and software, see https://github.com/processing/processing4/blob/main/LICENSE.md + +## Thanks! + +image + +[Design Systems International](https://designsystems.international/) designed and built the current website and the new Processing family of logos through a year of dedicated volunteer work. + +A remarkable group of volunteers converted all of the content from the prior Processing website to the new formats. A hearty round of applause for: Tetsu Kondo, Mark Webster, Lionel Radisson, Chris Coleman, Justin Gitlin, Seenahm Suriyasat, Shobhit Sharma, Karan Dudeja, Mark Hancock, Peter Jacobson, Oğuzhan Göregen, Bryan Ma, Ashley James Brown 💙 + +![image](https://github.com/user-attachments/assets/da687f3b-f839-4036-8d14-453b354ca40c) + +Thanks to [Netlify](https://www.netlify.com/) for providing hosting, automation, and deploy previews! + +--- +> [!NOTE] +> The following is included in the processing-website repository for historical reasons but it is not related to the functioning of the Processing website itself. It should eventually be moved to a more suitable location. ## `keywords.txt` -The website repo has a script that generates the `keywords.txt` file into the `processing4` repo to use for syntax highlighting the PDE. Follow these steps in order to generate that file: +This repo contains a script [`updateKeywords.js`](https://github.com/processing/processing-website/blob/main/scripts/updateKeywords.js) that generates the [`keywords.txt`](https://github.com/processing/processing4/blob/6a2cf8cda35552c62a1a794bb1e20f43fe8ffcda/java/keywords.txt) file used for syntax highlighting in the Processing IDE. + +Follow these steps in order to generate the `keywords.txt` file: 1. Make sure you have this `processing-website` repo and the `processing4` repo next to each other on your computer 2. Make sure the [JavaDoc and reference](https://github.com/processing/processing-website/blob/main/docs/reference.md) are up to date with the latest version of Processing. Otherwise make the necessary updates to the JavaDoc in the `processing4` repo then [run the Doclet script](https://github.com/processing/processing-doclet/blob/main/README.md). _(note: this step is only necessary if new keywords were added to the Processing API)_ 3. Run `npm run updateKeywords` The `processing4` repo now has an updated `java/keywords.txt` file. - -## Building the site - -If you need to manually build the site, you can do it by running `npm run build` from the project source. This command is that runs behind the scenes when deploying a release. - -It will build from the source and produce the static website in a folder `public`. Once built, the site can run in any static file server. diff --git a/content/books/algorithms-for-visual-design/index.es.mdx b/content/books/algorithms-for-visual-design/index.es.mdx index c198ddc25..5adc85348 100644 --- a/content/books/algorithms-for-visual-design/index.es.mdx +++ b/content/books/algorithms-for-visual-design/index.es.mdx @@ -3,7 +3,7 @@ title: "Algorithms for Visual Design Using the Processing Language" author: "Kostas Terzidis" details: "Wiley. 384 Páginas. Cubierta dura." published: "2009-05" -buy: "Ordena de Amazon-http://www.amazon.com/gp/product/0470375485?ie=UTF8&tag=processing09-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=0470375485" +buy: "Ordena de Amazon-https://www.amazon.com/gp/product/0470375485" language: "" --- diff --git a/content/books/algorithms-for-visual-design/index.mdx b/content/books/algorithms-for-visual-design/index.mdx index b0adbbbe7..f1dfcf1ff 100644 --- a/content/books/algorithms-for-visual-design/index.mdx +++ b/content/books/algorithms-for-visual-design/index.mdx @@ -3,7 +3,7 @@ title: "Algorithms for Visual Design Using the Processing Language" author: "Kostas Terzidis" details: "Wiley. 384 Pages. Hardcover." published: "2009-05" -buy: "Order from Amazon-http://www.amazon.com/gp/product/0470375485?ie=UTF8&tag=processing09-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=0470375485" +buy: "Order from Amazon-https://www.amazon.com/gp/product/0470375485" language: "" --- diff --git a/content/books/built-with-processing/index.es.mdx b/content/books/built-with-processing/index.es.mdx index ffe5e66df..450deebee 100644 --- a/content/books/built-with-processing/index.es.mdx +++ b/content/books/built-with-processing/index.es.mdx @@ -8,5 +8,5 @@ language: "Japonés" --- Nota de Casey: "He recibido una copia de este libro de los autores en un viaje reciente a Japón. Es un libro producido bellamente a todo color que presenta Processing, mostrando trabajos creados con Processing (muchos de ellos en la sección de Exhibición del sitio web de Processing), he introduciendo la programación a través de ejemplos cada vez más complicados. La mayor parte del libro es una introducción a la programación. Hay muy buenos ejemplos y el código esta a color como en el Entorno Processing. Este libro es menos comprehensivo que los libros de Greenberg y Reas/Fry, pero parece ser una breve y buena introducción." -Hay información adicional en el sitio web del [ editor.](http://www.bnn.co.jp/books/title_index/web/processing.html) +Hay información adicional en el sitio web del [ editor.](https://bnn.co.jp/search?q=Built+with+Processing&type=product) diff --git a/content/books/built-with-processing/index.mdx b/content/books/built-with-processing/index.mdx index c4bedcafa..c9f868684 100644 --- a/content/books/built-with-processing/index.mdx +++ b/content/books/built-with-processing/index.mdx @@ -9,4 +9,4 @@ language: "Japanese" Note from Casey: "I received a copy of this book from the authors on a recent trip to Japan. It's a beautifully produced full-color book with sections introducing Processing, featuring work created with Processing (many are from the Exhibition section of the Processing website), and introducing programming through progressively complicated examples. The majority of the book is an introduction to programming. There are many good examples and the code is color-coded like in the Processing Environment. This book is less comprehensive than the Greenberg and Reas/Fry books, but it appears to be a good, brief introduction." -There's additional information on [the publisher's website.](http://www.bnn.co.jp/books/title_index/web/processing.html) +There's additional information on [the publisher's website.](https://bnn.co.jp/search?q=Built+with+Processing&type=product) diff --git a/content/books/coding-art-2/coding-art-2.jpg b/content/books/coding-art-2/coding-art-2.jpg new file mode 100644 index 000000000..973d5c465 Binary files /dev/null and b/content/books/coding-art-2/coding-art-2.jpg differ diff --git a/content/books/coding-art-2/index.es.mdx b/content/books/coding-art-2/index.es.mdx new file mode 100644 index 000000000..b04f4be95 --- /dev/null +++ b/content/books/coding-art-2/index.es.mdx @@ -0,0 +1,10 @@ +--- +title: "Coding Art: A Guide to Unlocking Your Creativity with the Processing Language and p5.js in Four Simple Steps" +author: "Yu Zhang, Mathias Funk" +details: "Apress/Springer. 350 páginas. Pasta blanda." +published: "2024-01" +buy: "Ordena de Springer-https://link.springer.com/book/10.1007/978-1-4842-9780-3,Ordena de Amazon-https://www.amazon.nl/Coding-Art-Unlocking-Creativity-Processing/dp/1484297792" +language: "" +--- + +Los autores escriben: "¡Por fin, un libro sobre programación creativa, escrito directamente para artistas y diseñadores! Esta segunda edición ofrece contenidos ampliados y actualizados que incorporan los últimos avances y tendencias en el campo de la programación creativa, también para creativos que desean trabajar directamente con P5.js y en línea. Profundiza en los entresijos del arte computacional. Incluye casos prácticos novedosos que exploran las aplicaciones del arte de la codificación en el mundo real, inspirando a los lectores a pensar más allá de los límites tradicionales. En lugar de seguir un plan de estudios de informática, este libro está dirigido a creativos que trabajan en la intersección del diseño, el arte y la educación. Siguiendo un caso de uso del arte computacional en el mundo real, verás cómo se relaciona con los cuatro pilares clave, y aborda los posibles escollos y desafíos en el proceso creativo. Todos los ejemplos de código se presentan en una biblioteca de ejemplos de Processing totalmente integrada, lo que facilita a los lectores la puesta en marcha." \ No newline at end of file diff --git a/content/books/coding-art-2/index.mdx b/content/books/coding-art-2/index.mdx new file mode 100644 index 000000000..48f07ab49 --- /dev/null +++ b/content/books/coding-art-2/index.mdx @@ -0,0 +1,10 @@ +--- +title: "Coding Art: A Guide to Unlocking Your Creativity with the Processing Language and p5.js in Four Simple Steps" +author: "Yu Zhang, Mathias Funk" +details: "Apress/Springer. 350 pages. Paperback." +published: "2024-01" +buy: "Order from Springer-https://link.springer.com/book/10.1007/978-1-4842-9780-3,Order from Amazon-https://www.amazon.nl/Coding-Art-Unlocking-Creativity-Processing/dp/1484297792" +language: "" +--- + +The authors write, "Finally, a book on creative programming, written directly for artists and designers! This second edition offers expanded and updated content incorporating the latest advancements and trends in the field of creative programming, also for creatives who want to work directly with P5.js and online. It delves deeper into the intricacies of computational art. It includes fresh case studies that explore real-world applications of coding art, inspiring readers to think beyond traditional boundaries. Rather than following a computer science curriculum, this book is aimed at creatives who are working in the intersection of design, art, and education. Following a real-world use case of computation art, you'll see how it relates back to the four key pillars, and addresses potential pitfalls and challenges in the creative process. All code examples are presented in a fully integrated Processing example library, making it easy for readers to get started." \ No newline at end of file diff --git a/content/books/coding-art-jp/coding-art-jp.jpg b/content/books/coding-art-jp/coding-art-jp.jpg new file mode 100644 index 000000000..39697dece Binary files /dev/null and b/content/books/coding-art-jp/coding-art-jp.jpg differ diff --git a/content/books/coding-art-jp/index.es.mdx b/content/books/coding-art-jp/index.es.mdx new file mode 100644 index 000000000..33e194336 --- /dev/null +++ b/content/books/coding-art-jp/index.es.mdx @@ -0,0 +1,12 @@ +--- +title: "たのしいクリエイティブコーディング" +author: "Yu Zhang, Mathias Funk" +details: "BNN. 228 páginas. Pasta blanda." +published: "2023-06" +buy: "Ordena de Springer-https://link.springer.com/book/10.1007/978-1-4842-9780-3,Ordena de Amazon-https://www.amazon.nl/Coding-Art-Unlocking-Creativity-Processing/dp/1484297792" +language: "" +--- + +デジタルアートをはじめたいクリエイターのための教科書 + +オープンソースのプログラミング環境Processingを用いて、4つのステップ「アイデアのビジュアル化」「構図と構造」「洗練と深化」「プロダクション」を辿りながら、コンピュテーショナル・シンキングとコーディングによるアート制作の基礎が身に付く一冊。作例のサンプルコードはすべてProcessing内のContribution Managerからインストール可能なので、プログラミングでアート制作をする「クリエイティブコーディング」のたのしさと奥深さをすぐに体験できます。 \ No newline at end of file diff --git a/content/books/coding-art-jp/index.mdx b/content/books/coding-art-jp/index.mdx new file mode 100644 index 000000000..685b5d301 --- /dev/null +++ b/content/books/coding-art-jp/index.mdx @@ -0,0 +1,12 @@ +--- +title: "たのしいクリエイティブコーディング" +author: "Yu Zhang, Mathias Funk" +details: "BNN. 228 pages. Paperback." +published: "2023-06" +buy: "Order from BNN-https://bnn.co.jp/products/9784802512756" +language: "" +--- + +デジタルアートをはじめたいクリエイターのための教科書 + +オープンソースのプログラミング環境Processingを用いて、4つのステップ「アイデアのビジュアル化」「構図と構造」「洗練と深化」「プロダクション」を辿りながら、コンピュテーショナル・シンキングとコーディングによるアート制作の基礎が身に付く一冊。作例のサンプルコードはすべてProcessing内のContribution Managerからインストール可能なので、プログラミングでアート制作をする「クリエイティブコーディング」のたのしさと奥深さをすぐに体験できます。 \ No newline at end of file diff --git a/content/books/creating-procedural-artworks/index.mdx b/content/books/creating-procedural-artworks/index.mdx index 552cb1c28..ee0cef736 100644 --- a/content/books/creating-procedural-artworks/index.mdx +++ b/content/books/creating-procedural-artworks/index.mdx @@ -3,7 +3,7 @@ title: "Creating Procedural Artworks with Processing A Holistic Guide" author: "Penny de Byl" details: "CreateSpace Independent Publishing Platform, 386 pages. Paperback." published: "2017-05" -buy: "Order Print/eBook from Amazon-http://amzn.to/2oS1Bx1,Order from iBooks-https://geo.itunes.apple.com/us/book/creating-procedural-artworks-with-processing/id1247713287?mt=11" +buy: "Order Print/eBook from Amazon-https://www.amazon.com/gp/product/153286180X/, Order from Apple Books-https://books.apple.com/nl/book/creating-procedural-artworks-with-processing/id1247713287?uo=4&mt=11" language: "" --- @@ -11,6 +11,4 @@ This book started as a set of tutorials for university level multimedia students The chapters are organised to weave together programming functionality and design principles presenting one concept at a time, with multiple hands on exercises in each chapter. -Additional information available at http://holistic3d.com/creating-procedural-artworks/ - -Experience an example of the artworks created at http://holistic3d.com/processing +Additional information available at https://processing.holistic3d.com/ diff --git a/content/books/data-driven-graphic-design/index.mdx b/content/books/data-driven-graphic-design/index.mdx index d5708c56c..a94f2dc1e 100644 --- a/content/books/data-driven-graphic-design/index.mdx +++ b/content/books/data-driven-graphic-design/index.mdx @@ -3,7 +3,7 @@ title: "Data-driven Graphic Design: Creative Coding for Visual Communication" author: "Andrew Richardson" details: "Bloomsbury. 224 Pages. Paperback." published: "2016-01" -buy: "Order from Amazon-http://www.amazon.com/dp/1472578309/" +buy: "Order from Bloomsbury-https://www.bloomsbury.com/uk/datadriven-graphic-design-9781472578303/" language: "" --- diff --git a/content/books/einfuehrung-ins-programmieren-mit-processing/index.mdx b/content/books/einfuehrung-ins-programmieren-mit-processing/index.mdx index 8de5b8c5c..fe5feec38 100644 --- a/content/books/einfuehrung-ins-programmieren-mit-processing/index.mdx +++ b/content/books/einfuehrung-ins-programmieren-mit-processing/index.mdx @@ -3,7 +3,7 @@ title: "Einführung ins Programmieren mit Processing" author: "Matthias Wolf" details: "178 pages. PDF, Paperback." published: "2013-08" -buy: "Order Print/EBook from lulu.com-http://www.lulu.com/shop/search.ep?keyWords=matthias+wolf&categoryId=100501" +buy: "Order eBook (revised 2022) from lulu.com-https://www.lulu.com/shop/matthias-wolf/einf%C3%BChrung-ins-programmieren-mit-processing/ebook/product-qmqqrm.html?q=Einf%C3%BChrung+ins+Programmieren+mit+Processing&page=1&pageSize=4, Order Print from lulu.com-https://www.lulu.com/shop/matthias-wolf/einf%C3%BChrung-ins-programmieren-mit-processing/paperback/product-14mjrmq9.html?q=Einf%C3%BChrung+ins+Programmieren+mit+Processing&page=1&pageSize=4" language: "German" --- diff --git a/content/books/generative-art/index.mdx b/content/books/generative-art/index.mdx index 5c5f2ffbd..6038082fd 100644 --- a/content/books/generative-art/index.mdx +++ b/content/books/generative-art/index.mdx @@ -3,7 +3,7 @@ title: "Generative Art" author: "Matt Pearson" details: "Manning Publications. 300 pages. Paperback." published: "2011-03" -buy: "Order from Amazon-http://www.amazon.com/gp/product/1935182625?ie=UTF8&tag=processing09-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=1935182625" +buy: "Order EBook/Print from Manning-https://www.manning.com/books/generative-art" language: "" --- diff --git a/content/books/generative-design/index.mdx b/content/books/generative-design/index.mdx index 14d01ed58..8492c938c 100644 --- a/content/books/generative-design/index.mdx +++ b/content/books/generative-design/index.mdx @@ -3,8 +3,8 @@ title: "Generative Design" author: "Hartmut Bohnacker, Benedikt Gross, Julia Laub, and Claudius Lazzeroni" details: "Princeton Architectural Press. 472 pages. Originally published in German November 2009, Schmidt Hermann Verlag. 500 pages." published: "2012-08" -buy: "Order from Amazon-http://www.amazon.com/gp/product/1616890770/ref=as_li_ss_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=1616890770&linkCode=as2&tag=processing09-20" -language: "" +buy: "Order from Amazon-https://www.amazon.com/gp/product/1616890770/" +language: "English, German" --- This book is extraordinary; the design is clear and the production quality is fantastic. This is the design book about Processing that we've hoped for. Unlike most other Processing books, it doesn't discuss programming basics so it's free to start with exciting examples. The publisher promotes, "Generative design is a revolutionary new method of creating artwork, models, and animations from sets of rules, or algorithms. By using accessible programming languages such as Processing, artists and designers are producing extravagant, crystalline structures that can form the basis of anything from patterned textiles and typography to lighting, scientific diagrams, sculptures, films, and even fantastical buildings. Opening with a gallery of thirty-five illustrated case studies, Generative Design takes users through specific, practical instructions on how to create their own visual experiments by combining simple-to-use programming codes with basic design principles. A detailed handbook of advanced strategies provides visual artists with all the tools to achieve proficiency. Both a how-to manual and a showcase for recent work in this exciting new field, Generative Design is the definitive study and reference book that designers have been waiting for." diff --git a/content/books/getting-started/index.mdx b/content/books/getting-started/index.mdx index ee7e527f0..f597c9e5a 100644 --- a/content/books/getting-started/index.mdx +++ b/content/books/getting-started/index.mdx @@ -3,7 +3,7 @@ title: "Make: Getting Started with Processing, Second Edition" author: "Casey Reas and Ben Fry" details: "Maker Media. 238 pages. Paperback." published: "2015-09" -buy: "Order Print/EBook from O'Reilly-http://shop.oreilly.com/product/0636920031406.do, Order from Amazon-http://www.amazon.com/gp/product/1457187086/ref=as_li_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=1457187086&linkCode=as2&tag=processing09-20&linkId=JEJC22CTQ5ZF4ZYO" +buy: "Order Ebook from Ebooks.com-https://www.ebooks.com/en-nl/book/2208258/getting-started-with-processing/casey-reas/,Order from Amazon.com-https://www.amazon.com/gp/product/1457187086/" language: "" --- diff --git a/content/books/learn-python-visually/index.es.mdx b/content/books/learn-python-visually/index.es.mdx index 6ccd146ec..aa4cde5bb 100644 --- a/content/books/learn-python-visually/index.es.mdx +++ b/content/books/learn-python-visually/index.es.mdx @@ -3,7 +3,7 @@ title: "Learn Python Visually: Creative Coding with Processing.py" author: "Tristan Bunn" details: "No Starch Press. 296 páginas. Libro de bolsillo y libro electrónico." published: "2021-04" -buy: "Ordena de No Starch Press-https://nostarch.com/Learn-Python-Visually,Ordena de Amazon-https://www.amazon.com/Learn-Python-Visually-Tristan-Bunn/dp/1718500963" +buy: "Ordena de No Starch Press-https://nostarch.com/Learn-Python-Visually" language: "" --- diff --git a/content/books/learn-python-visually/index.mdx b/content/books/learn-python-visually/index.mdx index abdb1db85..c23002fb4 100644 --- a/content/books/learn-python-visually/index.mdx +++ b/content/books/learn-python-visually/index.mdx @@ -3,7 +3,7 @@ title: "Learn Python Visually: Creative Coding with Processing.py" author: "Tristan Bunn" details: "No Starch Press. 296 pages. Paperback and eBook." published: "2021-04" -buy: "Order from No Starch Press-https://nostarch.com/Learn-Python-Visually,Order from Amazon-https://www.amazon.com/Learn-Python-Visually-Tristan-Bunn/dp/1718500963" +buy: "Order from No Starch Press-https://nostarch.com/Learn-Python-Visually" language: "" --- diff --git a/content/books/learning-processing-2/index.mdx b/content/books/learning-processing-2/index.mdx index fdb64ce76..ae9f8f0e8 100644 --- a/content/books/learning-processing-2/index.mdx +++ b/content/books/learning-processing-2/index.mdx @@ -3,7 +3,7 @@ title: "Learning Processing, Second Edition: A Beginner's Guide to Programming I author: "Daniel Shiffman" details: "Morgan Kaufmann. 564 pages. Paperback." published: "2015-08" -buy: "Order from Amazon-https://www.amazon.com/gp/product/0123944430/ref=as_li_ss_tl?ref_=nav_ya_signin&linkCode=sl1&tag=processing09-20&linkId=fb0eeedd8fb1016a790e83d538a1c030" +buy: "Order from Bookshop.org-https://bookshop.org/p/books/learning-processing-a-beginner-s-guide-to-programming-images-animation-and-interaction-daniel-shiffman/10337073?ean=9780123944436,Order from Amazon.co.uk-https://www.amazon.co.uk/Learning-Processing-Second-Programming-Interaction/dp/0123944430/r" language: "" --- diff --git a/content/books/nature-of-code/index.es.mdx b/content/books/nature-of-code/index.es.mdx index 33513ed17..78b9c5e5b 100644 --- a/content/books/nature-of-code/index.es.mdx +++ b/content/books/nature-of-code/index.es.mdx @@ -3,11 +3,10 @@ title: "The Nature of Code: Simulating Natural Systems with Processing" author: "Daniel Shiffman" details: "PDF, Web, Pasta blanda." published: "2012-12" -buy: "Ordena de Amazon-http://www.amazon.com/gp/product/0985930802/ref=as_li_ss_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=0985930802&linkCode=as2&tag=processing09-20" +buy: "Ordena de Bookshop.org-https://bookshop.org/p/books/the-nature-of-code-simulating-natural-systems-with-processing-daniel-shiffman/12495179?ean=9780985930806" language: "" --- -Visita [La naturaleza del código](http://natureofcode.com/) +Visita el sitio web de [Nature of Code](http://natureofcode.com/) (ahora dedicado a la versión más reciente que se centra en P5.js). ¿Cómo podemos capturar las impredecibles propiedades evolucionarias y emergentes de la naturaleza en código?¿Cómo puede el entender los principios matemáticos detrás de nuestro mundo físico ayudarnos a crear mundos digitales? Este libro se enfoca a un rango de estrategias de programación detrás de las simulaciones computacionales de sistemas naturales, desde conceptos elementales en matemáticas y física a algoritmos avanzados que permiten sofisticados resultados visuales. Los lectores progresarán desde la construcción de un motor de física básico hasta la creación de objetos inteligentes y móviles, sentando las bases para diversos experimentos en diseño generativo. Los temas incluyen fuerzas, trigonometría, fractales, automatas celulares, auto-organización y algoritmos genéticos - diff --git a/content/books/nature-of-code/index.mdx b/content/books/nature-of-code/index.mdx index e53621a8d..765f7ad21 100644 --- a/content/books/nature-of-code/index.mdx +++ b/content/books/nature-of-code/index.mdx @@ -3,10 +3,10 @@ title: "The Nature of Code: Simulating Natural Systems with Processing" author: "Daniel Shiffman" details: "PDF, Web, Paperback." published: "2012-12" -buy: "Order from Amazon-http://www.amazon.com/gp/product/0985930802/ref=as_li_ss_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=0985930802&linkCode=as2&tag=processing09-20" +buy: "Order from Bookshop.org-https://bookshop.org/p/books/the-nature-of-code-simulating-natural-systems-with-processing-daniel-shiffman/12495179?ean=9780985930806" language: "" --- -Visit the Nature of [Code website](http://natureofcode.com/) +Visit the [Nature of Code website](http://natureofcode.com/) (now dedicated to latest version which focusses on P5.js.) How can we capture the unpredictable evolutionary and emergent properties of nature in software? How can understanding the mathematical principles behind our physical world help us to create digital worlds? This book focuses on a range of programming strategies and techniques behind computer simulations of natural systems, from elementary concepts in mathematics and physics to more advanced algorithms that enable sophisticated visual results. Readers will progress from building a basic physics engine to creating intelligent moving objects and complex systems, setting the foundation for further experiments in generative design. Subjects covered include forces, trigonometry, fractals, cellular automata, self-organization, and genetic algorithms. diff --git a/content/books/processing-an-introduction-to-programming/index.mdx b/content/books/processing-an-introduction-to-programming/index.mdx index fcaff1543..03fddbe3a 100644 --- a/content/books/processing-an-introduction-to-programming/index.mdx +++ b/content/books/processing-an-introduction-to-programming/index.mdx @@ -3,7 +3,7 @@ title: "Processing: An Introduction to Programming" author: "Jeffrey L. Nyhoff, Larry R. Nyhoff" details: "CRC Press. 544 pages. eBook, Paperback." published: "2017-05" -buy: "Order from CRC Press-https://www.crcpress.com/Processing-An-Introduction-to-Programming/Nyhoff-Nyhoff/p/book/9781482255959,Order from Amazon-https://www.amazon.com/Processing-Introduction-Programming-Jeffrey-Nyhoff/dp/1482255952" +buy: "Order from Routledge-https://www.routledge.com/Processing-An-Introduction-to-Programming/Nyhoff-Nyhoff/p/book/9781482255959" language: "" --- diff --git a/content/books/processing-android-2/index.es.mdx b/content/books/processing-android-2/index.es.mdx new file mode 100644 index 000000000..e8b9e0f90 --- /dev/null +++ b/content/books/processing-android-2/index.es.mdx @@ -0,0 +1,12 @@ +--- +title: "Processing for Android: Create Mobile, Sensor-Aware, and XR Applications Using Processing (2nd edition)" +author: "Andrés Colubri" +details: "Apress. 432 páginas. Pasta blanda." +published: "2023-10" +buy: "Ordena de Springer-https://link.springer.com/book/10.1007/978-1-4842-9585-4,Página del libro-https://andrescolubri.net/processing-for-android-book/" +language: "Inglés" +--- + +Aprenda a utilizar el lenguaje y entorno de programación Processing para crear aplicaciones Android con facilidad. Este libro cubre los fundamentos del lenguaje Processing, permitiendo a los usuarios programar eficazmente gráficos interactivos en 2D, 3D y Realidad Extendida (XR). También detalla la aplicación de estas técnicas en diferentes tipos de dispositivos Android (smartphones, tablets, wearables y smartwatches). + +Esta edición actualizada le guiará a través de todo el proceso de creación de una aplicación, desde la idea inicial hasta el lanzamiento de la aplicación final a través de Google Play Store. A lo largo del libro, aprenderá a escribir aplicaciones atractivas basadas en la interacción del usuario y los datos de los sensores. Una completa serie de proyectos prácticos, que van desde simples bocetos a proyectos más complejos con shaders, realidad virtual (RV) y realidad aumentada (RA), le proporcionarán la experiencia de primera mano que necesita para empezar a desarrollar sus propios proyectos. diff --git a/content/books/processing-android-2/index.mdx b/content/books/processing-android-2/index.mdx new file mode 100644 index 000000000..4f68a9283 --- /dev/null +++ b/content/books/processing-android-2/index.mdx @@ -0,0 +1,12 @@ +--- +title: "Processing for Android: Create Mobile, Sensor-Aware, and XR Applications Using Processing (2nd edition)" +author: "Andrés Colubri" +details: "Apress. 432 pages. Paperback." +published: "2023-10" +buy: "Order Print/EBook from Springer-https://link.springer.com/book/10.1007/978-1-4842-9585-4,Book Page-https://andrescolubri.net/processing-for-android-book/" +language: "" +--- + +Learn how to use the Processing programming language and environment to create Android applications with ease. This book covers the basics of the Processing language, allowing users to effectively program interactive graphics in 2D, 3D, and Extended Reality (XR). It also details the application of these techniques to different types of Android devices (smartphones, tablets, wearables, and smartwatches). + +This updated edition walks you through the entire process of creating an app, from the initial idea to release of the final app via the Google Play App Store. Over the course of the book, you’ll learn to write engaging apps driven by user interaction and sensor data. A comprehensive series of hands-on projects, ranging from simple sketches to more complex projects involving shaders, VR, and AR will give you the firsthand experience you need to begin developing your own projects. \ No newline at end of file diff --git a/content/books/processing-android-2/processing-android-2.jpg b/content/books/processing-android-2/processing-android-2.jpg new file mode 100644 index 000000000..772fe9adc Binary files /dev/null and b/content/books/processing-android-2/processing-android-2.jpg differ diff --git a/content/books/processing-android/index.mdx b/content/books/processing-android/index.mdx index dc74b0b9e..2ba5b8e88 100644 --- a/content/books/processing-android/index.mdx +++ b/content/books/processing-android/index.mdx @@ -3,7 +3,7 @@ title: "Processing for Android: Create Mobile, Sensor-Aware, and VR Applications author: "Andrés Colubri" details: "Apress. 381 pages. Paperback." published: "2017-11" -buy: "Order Print/EBook from Apress-https://www.apress.com/us/book/9781484227183,Order Print from Amazon-https://www.amazon.com/Processing-Android-Create-Sensor-Aware-Applications/dp/1484227182" +buy: "Order Print/EBook from Apress-https://www.apress.com/us/book/9781484227183" language: "" --- diff --git a/content/books/processing-creative-coding/index.mdx b/content/books/processing-creative-coding/index.mdx index 1c8db9574..7713a7526 100644 --- a/content/books/processing-creative-coding/index.mdx +++ b/content/books/processing-creative-coding/index.mdx @@ -3,8 +3,8 @@ title: "Processing: Creative Coding and Computational Art (Foundation)" author: "Ira Greenberg (Foreword by Keith Peters)" details: "Friends of Ed. 840 pages. Hardcover." published: "2007-05" -buy: "Order from Amazon-http://www.amazon.com/gp/product/159059617X?ie=UTF8&tag=processing09-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=159059617X,Sample chapters available from Friends of Ed-http://www.friendsofed.com/book.html?isbn=159059617X" +buy: "Order from Bookshop.org-https://bookshop.org/p/books/processing-creative-coding-and-computational-art-ira-greenberg/10248365" language: "" --- -The Friends of Ed website says, "This book is written especially for artists, designers, and other creative professionals and students exploring code art, graphics programming, and computational aesthetics. The book provides a solid and comprehensive foundation in programming, including object-oriented principles, and introduces you to the easy-to-grasp Processing language, so no previous coding experience is necessary. The book then goes through using Processing to code lines, curves, shapes, and motion, continuing to the point where you'll have mastered Processing and can really start to unleash your creativity with realistic physics, interactivity, and 3D! In the final chapter, you'll even learn how to extend your Processing skills by working directly with the powerful Java programming language, the language Processing itself is built with." (Quote from the Friends of Ed website) +"This book is written especially for artists, designers, and other creative professionals and students exploring code art, graphics programming, and computational aesthetics. The book provides a solid and comprehensive foundation in programming, including object-oriented principles, and introduces you to the easy-to-grasp Processing language, so no previous coding experience is necessary. The book then goes through using Processing to code lines, curves, shapes, and motion, continuing to the point where you'll have mastered Processing and can really start to unleash your creativity with realistic physics, interactivity, and 3D! In the final chapter, you'll even learn how to extend your Processing skills by working directly with the powerful Java programming language, the language Processing itself is built with." (Quote from the publisher Friends of Ed) diff --git a/content/books/processing-creative-coding2/index.mdx b/content/books/processing-creative-coding2/index.mdx index fa623dffb..5f12ee3fe 100644 --- a/content/books/processing-creative-coding2/index.mdx +++ b/content/books/processing-creative-coding2/index.mdx @@ -3,7 +3,7 @@ title: "Processing: Creative Coding and Generative Art in Processing 2" author: "Ira Greenberg, Dianna Xu, Deepak Kumar" details: "Friends of ED. 472 pages. Paperback." published: "2013-04" -buy: "Order Print from Apress-http://www.apress.com/9781430244646,Order from Amazon-http://www.amazon.com/gp/product/143024464X/ref=as_li_ss_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=143024464X&linkCode=as2&tag=processing09-20" +buy: "Order Print from Apress-http://www.apress.com/9781430244646" language: "" --- diff --git a/content/books/processing-for-visual-artists/index.mdx b/content/books/processing-for-visual-artists/index.mdx index 7e89d0e30..a6eba01e1 100644 --- a/content/books/processing-for-visual-artists/index.mdx +++ b/content/books/processing-for-visual-artists/index.mdx @@ -3,7 +3,7 @@ title: "Processing for Visual Artists: How to Create Expressive Images and Inter author: "Andrew S. Glassner" details: "A K Peters. Paperback." published: "2010-08" -buy: "Order from Amazon-http://www.amazon.com/gp/product/1568817169?ie=UTF8&tag=processing09-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=1568817169" +buy: "Order from Routledge-https://www.routledge.com/Processing-for-Visual-Artists-How-to-Create-Expressive-Images-and-Interactive-Art/Glassner/p/book/9781568817163" language: "" --- diff --git a/content/books/processing-handbook/index.mdx b/content/books/processing-handbook/index.mdx index b7567bb03..270569d06 100644 --- a/content/books/processing-handbook/index.mdx +++ b/content/books/processing-handbook/index.mdx @@ -3,7 +3,7 @@ title: "Processing: A Programming Handbook for Visual Designers, Second Edition" author: "Casey Reas and Ben Fry" details: "The MIT Press. 720 pages. Hardcover." published: "2014-12" -buy: "Order from MIT Press-https://mitpress.mit.edu/books/processing-second-edition,Order from Amazon-http://www.amazon.com/Processing-Programming-Handbook-Designers-Artists/dp/026202828X/ref=sr_1_6?s=books&ie=UTF8&qid=1406934187&sr=1-6&keywords=processing" +buy: "Order from MIT Press-https://mitpress.mit.edu/books/processing-second-edition,Order from Bookshop.org-https://bookshop.org/p/books/processing-second-edition-a-programming-handbook-for-visual-designers-and-artists-ben-fry/7546398" language: "" --- diff --git a/content/books/processing-lecode/index.mdx b/content/books/processing-lecode/index.mdx index 89be776df..fab5a1b65 100644 --- a/content/books/processing-lecode/index.mdx +++ b/content/books/processing-lecode/index.mdx @@ -1,10 +1,14 @@ --- -title: "Processing : Le code informatique comme outil de création" +title: "Processing : S'initier à la programmation créative" author: "Jean-Michel Géridan and Jean-Noël Lafargue" -details: "Pearson Education. 300 pages. Hardcover." -published: "2011-02" -buy: "Order from Apress-https://www.apress.com/us/book/9781484236963" +details: "Dunod. 320 pages. Paperback." +published: "2020-08" +buy: "Order 2nd edition from Fnac-https://www.fnac.com/a14639177/Jean-Michel-Geridan-Processing-2e-ed-S-initier-a-la-programmation-creative, Order 1st edition from Decitre-https://www.decitre.fr/livres/processing-9782100737840.html" language: "French" --- -The publisher says, "Décuplez votre créativité avec Processing ! Créé par des artistes pour des artistes dans un esprit de simplicité et de cohérence, Processing est un couteau-suisse mulltimédia qui permet de réaliser par programmation toutes sortes d'applications dans les domaines du design graphique, de l'image animée, du son, de la 3D ou de la communication interactive. Avec Processing, le code informatique devient un matériau des arts plastiques au même titre que l'argile, le fusain ou l'aquarelle. Ce livre vous aidera à prendre en main le logiciel et à concevoir vos premières créations. Il aborde les différents aspects du langage, depuis l'installation du logiciel jusqu'à la fabrication de documents pdf et de vidéos ou le traitement dynamique de données XML et le pilotage d'appareils électroniques tels que les cartes de prototypage Arduino et Wiring. Tirant parti de leur expérience pédagogique dans le domaine, les auteurs ont voulu que leur livre soit à la fois une référence complète sur le langage Processing et un cours progressif accessible aux lecteurs débutants en programmation." +The publisher says, "Processing est un langage à la fois simple, puissant et bien conçu. Pour ces raisons il constitue un excellent outil d’initiation à la programmation informatique et à la production artistique. +Cet ouvrage d’initiation a été conçu à l’intention : +• des créateurs qui produisent des installations interactives à l’aide de périphériques tels que la souris, le clavier ou la caméra, ou encore des cartes Arduino, des capteurs de distance, de mouvement, de température, de géolocalisation, etc. ; +• des graphistes qui génèrent des images ou des motifs, des visuels ou des data visualisations programmées, fixes, animées ou interactives ; +• et de tous ceux qui veulent s’initier à la programmation." diff --git a/content/books/processing-lecode/processing-lecode.png b/content/books/processing-lecode/processing-lecode.png index a915f48b6..e25f75357 100644 Binary files a/content/books/processing-lecode/processing-lecode.png and b/content/books/processing-lecode/processing-lecode.png differ diff --git a/content/books/processing_andres_wanner/index.mdx b/content/books/processing_andres_wanner/index.mdx index ad85a68c4..cf748f0ef 100644 --- a/content/books/processing_andres_wanner/index.mdx +++ b/content/books/processing_andres_wanner/index.mdx @@ -3,7 +3,7 @@ title: "Processing - eine Einführung in die Programmierung" author: "Andres Wanner (Chapters by Hans Peter Wyss, Roland Broennimann and Roman Schnyder)" details: "Version 1.1, Lulu Press. 83 pages. Softcover." published: "2010-05" -buy: "Order from lulu.com-http://www.lulu.com/content/8655305,Book website-http://www.pixelstorm.ch/processing" +buy: "Order from orellfuessli.ch-https://www.orellfuessli.ch/shop/home/artikeldetails/A1016738016,Book website-http://www.pixelstorm.ch/processing" language: "German" --- diff --git a/content/books/programmieren-trainieren/index.mdx b/content/books/programmieren-trainieren/index.mdx new file mode 100644 index 000000000..197d3cf51 --- /dev/null +++ b/content/books/programmieren-trainieren/index.mdx @@ -0,0 +1,14 @@ +--- +title: "Programmieren trainieren (3rd Edition)" +author: "Luigi Lo Iacono, Stephan Wiefling, and Michael Schneider" +details: "Hanser Fachbuch, 308 pages, Paperback + E-Book" +published: "2023-10" +buy: "Order from Hanser Fachbuch-https://www.hanser-fachbuch.de/fachbuch/artikel/9783446477667,Book Website-https://protrain.github.io/" +language: "German" +--- + +Der Programmier-Trainingsplan für alle, die weiter kommen wollen. + +In diesem Übungsbuch trainierst du anhand von kurzweiligen und praxisnahen Aufgaben deine Programmierfähigkeiten. Jedes Kapitel beginnt mit einem kurzen Warmup zum behandelten Programmierkonzept; die Umsetzung übst du dann anhand von zahlreichen Workout-Aufgaben. Du startest mit einfachen Aufgaben und steigerst dich hin zu komplexeren Fragestellungen. Damit dir nicht langweilig wird, gibt es über 150 praxisnahe Übungen. So lernst du z. B. einen BMI-Rechner oder einen PIN-Generator zu programmieren oder wie du eine Zeitangabe mit einer analogen Uhr anzeigen kannst. + +Solltest du mal nicht selbstständig vorankommen, dann werden dir in jedem Workout Lösungshinweise als Hilfestellung angeboten. Die kommentierten Lösungen liegen für Dich in den Programmiersprachen Java und Python in GitHub oder auf der Hanser-Plus-Seite zum Download bereit. Für ein möglichst ballastfreies Training wird für die elementaren Programmierkonzepte die Entwicklungsumgebung Processing eingesetzt. Für fortgeschrittenere Anwender wird auch der Einsatz von Eclipse und PyCharm gezeigt. Die Installation und Verwendung der Tools ist im Buch beschrieben. \ No newline at end of file diff --git a/content/books/programmieren-trainieren/programmieren-trainieren.jpg b/content/books/programmieren-trainieren/programmieren-trainieren.jpg new file mode 100644 index 000000000..1f594e27b Binary files /dev/null and b/content/books/programmieren-trainieren/programmieren-trainieren.jpg differ diff --git a/content/books/programming-interactivity/index.mdx b/content/books/programming-interactivity/index.mdx index 9b9a673ad..42e0fff2c 100644 --- a/content/books/programming-interactivity/index.mdx +++ b/content/books/programming-interactivity/index.mdx @@ -3,7 +3,7 @@ title: "Programming Interactivity" author: "Joshua Noble" details: "O'Reilly. 728 pages. Paperback." published: "2012-01" -buy: "Order from Amazon-http://www.amazon.com/gp/product/144931144X/ref=as_li_ss_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=144931144X&linkCode=as2&tag=processing09-20" +buy: "Order from Bookshop.org-https://bookshop.org/p/books/programming-interactivity-a-designer-s-guide-to-processing-arduino-and-openframeworks-joshua-noble/7848406" language: "" --- diff --git a/content/books/sparkfun/index.mdx b/content/books/sparkfun/index.mdx index d31d14a6a..531f24b95 100644 --- a/content/books/sparkfun/index.mdx +++ b/content/books/sparkfun/index.mdx @@ -3,7 +3,7 @@ title: "The SparkFun Guide to Processing" author: "Derek Runberg" details: "No Starch Press. 232 pages. Paperback." published: "2015" -buy: "Order from Amazon-http://www.amazon.com/gp/product/1593276125/ref=as_li_tl?ie=UTF8&camp=1789&creative=390957&creativeASIN=1593276125&linkCode=as2&tag=processing09-20&linkId=B7WHOVIHDYFQDJQZ" +buy: "Order from Bookshop.org-https://bookshop.org/p/books/the-sparkfun-guide-to-processing-create-interactive-art-with-code-derek-runberg/7917665" language: "" --- diff --git a/content/books/visualizing-data/index.mdx b/content/books/visualizing-data/index.mdx index f1ec8108b..67af293bc 100644 --- a/content/books/visualizing-data/index.mdx +++ b/content/books/visualizing-data/index.mdx @@ -3,7 +3,7 @@ title: "Visualizing Data" author: "Ben Fry" details: "O'Reilly. 384 pages. Paperback." published: "2007-12" -buy: "Order from Amazon-http://www.amazon.com/gp/product/0596514557?ie=UTF8&tag=processing09-20&linkCode=as2&camp=1789&creative=9325&creativeASIN=0596514557" +buy: "Order from Bookshop.org-https://bookshop.org/p/books/visualizing-data-exploring-and-explaining-data-with-the-processing-environment-ben-fry/8160664" language: "" --- diff --git a/content/contributions/$1_Unistroke_Recognizer.es.json b/content/contributions/$1_Unistroke_Recognizer.es.json deleted file mode 100644 index ca16a300d..000000000 --- a/content/contributions/$1_Unistroke_Recognizer.es.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "name": "$1 Reconocedor Unistroke", - "authors": ["[Darius Morawiec](http://nok.onl)"], - "url": "https://github.com/nok/onedollar-unistroke-recognizer", - "categories": ["Utilities"], - "sentence": "Implementación del [ Reconocedor de Gestos $1 ](http://depts.washington.edu/aimgroup/proj/dollar/), un reconocedor de gestos basado en una plantilla bidimensional.", - "paragraph": "", - "id": "069", - "type": "library", - "packages": [ - { - "mode": "java", - "minRevision": "215", - "maxRevision": "0", - "props": "https://raw.githubusercontent.com/nok/onedollar-unistroke-recognizer/master/download/OneDollarUnistrokeRecognizer.txt", - "download": "https://raw.githubusercontent.com/nok/onedollar-unistroke-recognizer/master/download/OneDollarUnistrokeRecognizer.zip" - } - ] -} diff --git a/content/contributions/$1_Unistroke_Recognizer.json b/content/contributions/$1_Unistroke_Recognizer.json index 528593967..b58c7cde0 100644 --- a/content/contributions/$1_Unistroke_Recognizer.json +++ b/content/contributions/$1_Unistroke_Recognizer.json @@ -1,7 +1,7 @@ { "name": "$1 Unistroke Recognizer", "authors": [ - "[Darius Morawiec](http://nok.onl)" + "Darius Morawiec" ], "url": "https://github.com/nok/onedollar-unistroke-recognizer", "categories": [ diff --git a/content/contributions/(Weka4P)_Weka_Machine_Learning_for_Processing.es.json b/content/contributions/(Weka4P)_Weka_Machine_Learning_for_Processing.es.json deleted file mode 100644 index c20e4583d..000000000 --- a/content/contributions/(Weka4P)_Weka_Machine_Learning_for_Processing.es.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "name": "(Weka4P) Weka Aprendizaje de Máquina para Processing", - "authors": [ - "[Rong-Hao Liang](r.liang@tue.nl), [Wesley Hartogs](https://wesleyhartogs.nl), [Janet Huang](Y.C.Huang@tue.nl)" - ], - "url": "https://ronghaoliang.page/Weka4P/", - "categories": [ - "Data" - ], - "sentence": "Implementación de la biblioteca de Código Abierto Weka para Aprendizaje de Máquina paraProcessing 3.", - "paragraph": "Entrena y carga modelos para traer el Aprendizaje de Máquina (por ejemplo: clasificación y regresión) a tus proyectos de Processing.", - "id": "270", - "type": "library", - "packages": [ - { - "mode": "java", - "minRevision": "0", - "maxRevision": "0", - "props": "https://ronghaoliang.page/Weka4P/download/Weka4P.txt", - "download": "https://ronghaoliang.page/Weka4P/download/Weka4P.zip" - } - ] -} diff --git a/content/contributions/(Weka4P)_Weka_Machine_Learning_for_Processing.json b/content/contributions/(Weka4P)_Weka_Machine_Learning_for_Processing.json new file mode 100644 index 000000000..bb793670c --- /dev/null +++ b/content/contributions/(Weka4P)_Weka_Machine_Learning_for_Processing.json @@ -0,0 +1,22 @@ +{ + "name": "(Weka4P) Weka Machine Learning for Processing", + "authors": [ + "[Rong-Hao Liang](r.liang@tue.nl), [Wesley Hartogs](https://wesleyhartogs.nl), [Janet Huang](Y.C.Huang@tue.nl)" + ], + "url": "https://howieliang.github.io/Weka4P/", + "categories": [ + "Data" + ], + "sentence": "Implementation of the Open Source Weka Machine Learning Java library for Processing 3.", + "paragraph": "Train and load models to bring Machine Learning (for example: classification and regression) to your Processing projects.", + "type": "library", + "packages": [ + { + "mode": "java", + "minRevision": "0", + "maxRevision": "0", + "props": "https://howieliang.github.io/Weka4P/download/Weka4P.txt", + "download": "https://howieliang.github.io/Weka4P/download/Weka4P.zip" + } + ] +} \ No newline at end of file diff --git a/content/contributions/AI_for_2D_Games.es.json b/content/contributions/AI_for_2D_Games.es.json deleted file mode 100644 index 8277ffc7d..000000000 --- a/content/contributions/AI_for_2D_Games.es.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "name": "IA para juegos 2D", - "authors": [ - "[Peter Lager](http://www.lagers.org.uk)" - ], - "url": "http://www.lagers.org.uk/ai4g/index.html", - "categories": [ - "Simulation" - ], - "sentence": "Un framework que puede ser usado para juegos 2D y simulaciones.", - "paragraph": "Este proyecto soporta la creación de sketches que requieren agentes autónomos manejados por estados. Todo esta aquí para que empieces, incluyendo muchos ejemplos demostrando las características de la biblioteca. El [sitio web] (http://www.lagers.org.uk/ai4g/index.html) tiene muchos artículos y ejemplos de programas explicando esta sofisticada biblioteca.", - "id": "127", - "type": "library", - "packages": [ - { - "mode": "java", - "minRevision": "0227", - "maxRevision": "0", - "props": "http://www.lagers.org.uk/processing/ai4g/AI_for_2D_Games.txt", - "download": "http://www.lagers.org.uk/processing/ai4g/AI_for_2D_Games.zip" - } - ] -} diff --git a/content/contributions/Android_Mode_for_Processing_4.json b/content/contributions/Android_Mode_for_Processing_4.json index 104f025fa..152b861b0 100644 --- a/content/contributions/Android_Mode_for_Processing_4.json +++ b/content/contributions/Android_Mode_for_Processing_4.json @@ -3,7 +3,7 @@ "authors": [ "[The Processing Foundation](https://processingfoundation.org/)" ], - "url": "http://android.processing.org", + "url": "https://android.processing.org", "sentence": "This mode lets you use Processing to create Android apps", "paragraph": "", "imports": "processing.mode.java.JavaMode", diff --git a/content/contributions/Ani.json b/content/contributions/Ani.json index 37d92c90d..0e3cccb0d 100644 --- a/content/contributions/Ani.json +++ b/content/contributions/Ani.json @@ -15,8 +15,8 @@ "mode": "java", "minRevision": "0", "maxRevision": "0", - "props": "http://www.looksgood.de/libraries/Ani/Ani-latest.txt", - "download": "http://www.looksgood.de/libraries/Ani/Ani-latest.zip" + "props": "https://dev.benedikt-gross.de/libraries/Ani/Ani-latest.txt", + "download": "https://dev.benedikt-gross.de/libraries/Ani/Ani-latest.zip" } ] } \ No newline at end of file diff --git a/content/contributions/Apple_Light_Sensor.es.json b/content/contributions/Apple_Light_Sensor.es.json deleted file mode 100644 index 997d78b4e..000000000 --- a/content/contributions/Apple_Light_Sensor.es.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "name": "Apple Light Sensor", - "authors": [ - "[Martin Raedlinger](http://www.formatlos.de/)" - ], - "url": "http://projects.formatlos.de/ambientlightsensor/", - "categories": [ - "Hardware" - ], - "sentence": "Interfaz para el sensor de luz en computadoras MacBook Pro.", - "paragraph": "", - "id": "028", - "type": "library", - "packages": [ - { - "mode": "java", - "minRevision": "0", - "maxRevision": "228", - "props": "http://projects.formatlos.de/ambientlightsensor/download/AmbientLightSensor.txt", - "download": "http://projects.formatlos.de/ambientlightsensor/download/AmbientLightSensor.zip" - } - ] -} diff --git a/content/contributions/Apple_Light_Sensor.json b/content/contributions/Apple_Light_Sensor.json deleted file mode 100644 index d696c6596..000000000 --- a/content/contributions/Apple_Light_Sensor.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "Apple Light Sensor", - "authors": [ - "[Martin Raedlinger](http://www.formatlos.de/)" - ], - "url": "http://projects.formatlos.de/ambientlightsensor/", - "categories": [ - "Hardware" - ], - "sentence": "Interface to the Light Sensor in MacBook Pro computers.", - "paragraph": "", - "type": "library", - "packages": [ - { - "mode": "java", - "minRevision": "0", - "maxRevision": "228", - "props": "http://projects.formatlos.de/ambientlightsensor/download/AmbientLightSensor.txt", - "download": "http://projects.formatlos.de/ambientlightsensor/download/AmbientLightSensor.zip" - } - ] -} \ No newline at end of file diff --git a/content/contributions/Applet_Maker_&_Signer.json b/content/contributions/Applet_Maker_&_Signer.json index 8024c57c3..67c4ba8eb 100644 --- a/content/contributions/Applet_Maker_&_Signer.json +++ b/content/contributions/Applet_Maker_&_Signer.json @@ -3,7 +3,7 @@ "authors": [ "[Peter Lager](http://www.lagers.org.uk)" ], - "url": "http://www.lagers.org.uk/appletutil/", + "url": "", "categories": null, "sentence": "Enables the creation of self-signed Java Applets", "paragraph": "Simple wizard style interface to export and sign (optional) applets from Processing 2.0", diff --git a/content/contributions/BPM_timings.json b/content/contributions/BPM_timings.json new file mode 100644 index 000000000..05ff09633 --- /dev/null +++ b/content/contributions/BPM_timings.json @@ -0,0 +1,24 @@ +{ + "name": "BPM timings", + "authors": [ + "[Vincent Sijben](https://github.com/vincentsijben)" + ], + "url": "https://github.com/vincentsijben/bpm-timings-for-processing", + "categories": [ + "Math", + "Sound", + "Utilities" + ], + "sentence": "A collection of functions to animate visuals based on timings.", + "paragraph": "", + "type": "library", + "packages": [ + { + "mode": "java", + "minRevision": "270", + "maxRevision": "0", + "props": "https://github.com/vincentsijben/bpm-timings-for-processing/releases/download/latest/BPM_timings.txt", + "download": "https://github.com/vincentsijben/bpm-timings-for-processing/releases/download/latest/BPM_timings.zip" + } + ] +} \ No newline at end of file diff --git a/content/contributions/Basins_of_Attraction_(Newton's_Fractals).json b/content/contributions/Basins_of_Attraction_(Newton's_Fractals).json new file mode 100644 index 000000000..dd9384daa --- /dev/null +++ b/content/contributions/Basins_of_Attraction_(Newton's_Fractals).json @@ -0,0 +1,19 @@ +{ + "name": "Basins of Attraction (Newton's Fractals)", + "authors": [ + "[Saptarshi Dey](http://github.com/DarkMortal)" + ], + "url": "https://github.com/DarkMortal/Newton_Fractal", + "categories": null, + "sentence": "A set of sketches demonstrating the recursive nature of Newton's Fractals.", + "type": "examples", + "packages": [ + { + "mode": "java", + "minRevision": "0", + "maxRevision": "0", + "props": "https://raw.githubusercontent.com/DarkMortal/Newton_Fractal/main/Newton_Fractals.txt", + "download": "https://raw.githubusercontent.com/DarkMortal/Newton_Fractal/main/Newton_Fractals.zip" + } + ] +} \ No newline at end of file diff --git a/content/contributions/Beads.json b/content/contributions/Beads.json index 1eb40060c..66054abd5 100644 --- a/content/contributions/Beads.json +++ b/content/contributions/Beads.json @@ -1,7 +1,7 @@ { "name": "Beads", "authors": [ - "[Ollie Bown](http://www.olliebown.com), [Benito Crawford](http://benitomedia.com), [Ben Porter](http://bp.io) and [Aengus Martin](http://www.am-process.org)" + "[Ollie Bown](http://www.olliebown.com), Benito Crawford, [Ben Porter](http://bp.io) and [Aengus Martin](http://www.am-process.org)" ], "url": "http://www.beadsproject.net/", "categories": [ diff --git a/content/contributions/Box2D_for_Processing.json b/content/contributions/Box2D_for_Processing.json deleted file mode 100644 index 5afc931d8..000000000 --- a/content/contributions/Box2D_for_Processing.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "Box2D for Processing", - "authors": [ - "[Daniel Shiffman](http://www.shiffman.net/)" - ], - "url": "https://github.com/shiffman/Box2D-for-Processing", - "categories": [ - "Simulation" - ], - "sentence": "A library and set of examples for 2D physics simulation wrapping some aspects of [JBox2D](http://www.jbox2d.org/), a Java implementation of [Box2D](http://box2d.org/).", - "paragraph": "", - "type": "library", - "packages": [ - { - "mode": "java", - "minRevision": "0", - "maxRevision": "0", - "props": "http://shiffman.net/p5/libraries/box2d_processing/box2d_processing.txt", - "download": "http://shiffman.net/p5/libraries/box2d_processing/box2d_processing.zip" - } - ] -} \ No newline at end of file diff --git a/content/contributions/Coding_Art_Book.json b/content/contributions/Coding_Art_Book.json index d81e10ebd..394c13d86 100644 --- a/content/contributions/Coding_Art_Book.json +++ b/content/contributions/Coding_Art_Book.json @@ -1,14 +1,14 @@ { "name": "Coding Art Book", "authors": [ - "[Yu Zhang](https://yuzhang.nl) and [Mathias Funk](https://mathias-funk.com)" + "[Mathias Funk](https://mathias-funk.com) and [Yu Zhang](https://yuzhang.nl)" ], "url": "https://codingart-book.com", "categories": [ "Books" ], - "sentence": "All examples from the \"Coding Art\" book published by Apress.", - "paragraph": "The examples library contains all source code examples from the \"Coding Art\" book published by Apress. All examples are directly usable and identical to the source code provided in the book.", + "sentence": "All examples from the \"Coding Art\" book, second edition, published by Apress.", + "paragraph": "The examples library contains all source code examples from the \"Coding Art\" book, second edition, published by Apress. All Processing examples are directly usable and identical to the source code provided in the book. The p5.js examples need to be hosted to work, see book for instructions.", "lastUpdated": "0", "type": "examples", "packages": [ diff --git a/content/contributions/CoffeeScript_Mode.json b/content/contributions/CoffeeScript_Mode.json index 68f54b37d..755fb1301 100644 --- a/content/contributions/CoffeeScript_Mode.json +++ b/content/contributions/CoffeeScript_Mode.json @@ -1,11 +1,11 @@ { "name": "CoffeeScript Mode", "authors": [ - "[Florian Jenett](http://bezier.de/)" + "Florian Jenett" ], "url": "https://github.com/fjenett/coffeescript-mode-processing", "sentence": "Adds a CoffeeScript Mode based on Processing.js", - "paragraph": "CoffeeScript Mode is based on JavaScript Mode and runs on top of Processing.js. It runs through a server and inherits the template system from JavaScript mode. CoffeeScript is a functional language that compiles to JavaScript and was created by (Jeremy Ashkenas)[https://github.com/jashkenas/coffee-script].", + "paragraph": "CoffeeScript Mode is based on JavaScript Mode and runs on top of Processing.js. It runs through a server and inherits the template system from JavaScript mode. CoffeeScript is a functional language that compiles to JavaScript and was created by Jeremy Ashkenas.", "type": "mode", "categories": null, "packages": [ diff --git a/content/contributions/Complex_Numbers.json b/content/contributions/Complex_Numbers.json index 747cedadd..d1d39764a 100644 --- a/content/contributions/Complex_Numbers.json +++ b/content/contributions/Complex_Numbers.json @@ -1,7 +1,7 @@ { "name": "Complex Numbers", "authors": [ - "[Math Machine](https://discourse.processing.org/u/math_machine/)" + "[Chris Maguschak](https://discourse.processing.org/u/math_machine/)" ], "url": "https://github.com/vmathmachine/Complex-Numbers/tree/latest", "categories": [ diff --git a/content/contributions/Console.json b/content/contributions/Console.json index 2f72156b8..681eaa5f7 100644 --- a/content/contributions/Console.json +++ b/content/contributions/Console.json @@ -1,7 +1,7 @@ { "name": "Console", "authors": [ - "[Mathias Markl](http://www.mukprojects.at)" + "Mathias Markl" ], "url": "https://github.com/keshrath/Console", "categories": [ diff --git a/content/contributions/CountdownTimer.json b/content/contributions/CountdownTimer.json index a6bd0f7b6..68c2fb496 100644 --- a/content/contributions/CountdownTimer.json +++ b/content/contributions/CountdownTimer.json @@ -1,7 +1,7 @@ { "name": "CountdownTimer", "authors": [ - "[Dong Hyun Choi](http://dhchoi.com)" + "Dong Hyun Choi" ], "url": "https://github.com/dhchoi/processing-countdowntimer", "categories": [ diff --git a/content/contributions/Creative_Machine.json b/content/contributions/Creative_Machine.json new file mode 100644 index 000000000..9cfeeea84 --- /dev/null +++ b/content/contributions/Creative_Machine.json @@ -0,0 +1,22 @@ +{ + "name": "Creative Machine", + "categories": [ + "Data" + ], + "authors": [ + "[Jeongin Lee](https://github.com/jjeongin)" + ], + "url": "https://jjeongin.github.io/creative-machine", + "sentence": "A Machine Learning library for Processing.", + "paragraph": "Run different machine learning models in Processing.", + "type": "library", + "packages": [ + { + "mode": "java", + "minRevision": "0", + "maxRevision": "0", + "props": "https://github.com/jjeongin/creative-machine/releases/download/latest/creative_machine.txt", + "download": "https://github.com/jjeongin/creative-machine/releases/download/latest/creative_machine.zip" + } + ] +} \ No newline at end of file diff --git a/content/contributions/DMX4Artists.json b/content/contributions/DMX4Artists.json index 62a1be654..74a2e9d86 100644 --- a/content/contributions/DMX4Artists.json +++ b/content/contributions/DMX4Artists.json @@ -1,7 +1,7 @@ { "name": "DMX4Artists", "authors": [ - "[Jayson Haebich](http://www.jaysonh.com)" + "[Jayson Haebich](http://www.jaysonhaebich.com/)" ], "url": "https://github.com/jaysonh/Dmx4Artists/", "categories": [ diff --git a/content/contributions/Discord_Rich_Presence.json b/content/contributions/Discord_Rich_Presence.json new file mode 100644 index 000000000..fc4b6a60e --- /dev/null +++ b/content/contributions/Discord_Rich_Presence.json @@ -0,0 +1,21 @@ +{ + "name": "Discord Rich Presence", + "categories": null, + "authors": [ + "[Torben Haase](https://letorbi.com)" + ], + "url": "https://github.com/letorbi/discord-rich-presence-for-processing", + "sentence": "Shows that you are using Processing in your Discord status.", + "paragraph": "Show the world that you are using Processing! The Discord Rich Presence tool checks regularly what you are working on and updates your Discord rich presence status accordingly. Currently it shows that you are \"playing\" Processing and what mode (Java, p5.js etc.) you are using.", + "lastUpdated": "0", + "type": "tool", + "packages": [ + { + "mode": "java", + "minRevision": "400", + "maxRevision": "0", + "props": "https://github.com/letorbi/discord-rich-presence-for-processing/releases/latest/download/DiscordRichPresence.txt", + "download": "https://github.com/letorbi/discord-rich-presence-for-processing/releases/latest/download/DiscordRichPresence.zip" + } + ] +} \ No newline at end of file diff --git a/content/contributions/EasyEase.json b/content/contributions/EasyEase.json new file mode 100644 index 000000000..21165cdfb --- /dev/null +++ b/content/contributions/EasyEase.json @@ -0,0 +1,22 @@ +{ + "name": "EasyEase", + "authors": [ + "[Fred Egidi](https://github.com/fredegd)" + ], + "url": "https://fredegd.github.io/EasyEase", + "categories": [ + "Animation" + ], + "sentence": "Easing Function and non linear distribution utilities for Processing", + "paragraph": "EasyEase convert and bend linear motion into the most common easing curves", + "type": "library", + "packages": [ + { + "mode": "java", + "minRevision": "0", + "maxRevision": "0", + "props": "https://github.com/fredegd/EasyEase/releases/download/latest/EasyEase.txt", + "download": "https://github.com/fredegd/EasyEase/releases/download/latest/EasyEase.zip" + } + ] +} \ No newline at end of file diff --git a/content/contributions/Eliza.json b/content/contributions/Eliza.json index 1d8f472cd..4ed1f1a5d 100644 --- a/content/contributions/Eliza.json +++ b/content/contributions/Eliza.json @@ -1,9 +1,9 @@ { "name": "Eliza", "authors": [ - "[Andres Colubri](http://interfaze.info/)" + "Andres Colubri" ], - "url": "http://interfaze.info/libraries/eliza/", + "url": "", "categories": [ "Language" ], diff --git a/content/contributions/FIP.json b/content/contributions/FIP.json new file mode 100644 index 000000000..68d56af2d --- /dev/null +++ b/content/contributions/FIP.json @@ -0,0 +1,22 @@ +{ + "name": "FIP", + "authors": [ + "[Darragh Nolan](https://github.com/prontopablo/FIP)" + ], + "url": "https://prontopablo.github.io/FIP/", + "categories": [ + "Video & Vision" + ], + "sentence": "Fast Image Processing. Filters, post-processing and more.", + "paragraph": "FIP allows you to add effects such as cartoon filters, pixelation, and dithering using just three lines of code. The accompanying reference website provides all you need to get started!", + "type": "library", + "packages": [ + { + "mode": "java", + "minRevision": "0", + "maxRevision": "0", + "props": "https://github.com/prontopablo/FIP/releases/download/latest/FIP.txt", + "download": "https://github.com/prontopablo/FIP/releases/download/latest/FIP.zip" + } + ] +} \ No newline at end of file diff --git a/content/contributions/Fisica.json b/content/contributions/Fisica.json index 1242cb835..445e999ac 100644 --- a/content/contributions/Fisica.json +++ b/content/contributions/Fisica.json @@ -8,7 +8,7 @@ "Simulation" ], "sentence": "A wrapper for JBox2D, a 2D physics engine.", - "paragraph": "It is simply a wrapper around [JBox2D](http://www.jbox2d.org/). It tries to make it much easier to create physical models by exposing an object oriented API similar to [PPhys2D](http://pphys2d.jmcouillard.com/) physics library for Processing.", + "paragraph": "It is simply a wrapper around [JBox2D](http://www.jbox2d.org/). It tries to make it much easier to create physical models by exposing an object oriented API similar to the PPhys2D physics library for Processing.", "type": "library", "packages": [ { diff --git a/content/contributions/Fontastic.json b/content/contributions/Fontastic.json index c4421339b..b31fefb50 100644 --- a/content/contributions/Fontastic.json +++ b/content/contributions/Fontastic.json @@ -1,9 +1,9 @@ { "name": "Fontastic", "authors": [ - "[Andreas Koller](http://andreaskoller.com)" + "Andreas Koller" ], - "url": "http://code.andreaskoller.com/libraries/fontastic", + "url": "", "categories": [ "Typography" ], diff --git a/content/contributions/Free_Transform.json b/content/contributions/Free_Transform.json index bebf17d7c..44163c5bb 100644 --- a/content/contributions/Free_Transform.json +++ b/content/contributions/Free_Transform.json @@ -1,7 +1,7 @@ { "name": "Free Transform", "authors": [ - "[Bartosh Polonski](http://bpolonski.com)" + "Bartosh Polonski" ], "url": "https://github.com/barelief/freeTransform-processing", "categories": [ diff --git a/content/contributions/G4P_GUI_Builder.json b/content/contributions/G4P_GUI_Builder.json index 0dcb757d9..490a1f261 100644 --- a/content/contributions/G4P_GUI_Builder.json +++ b/content/contributions/G4P_GUI_Builder.json @@ -11,7 +11,7 @@ "packages": [ { "mode": "java", - "minRevision": "246", + "minRevision": "0246", "maxRevision": "0", "props": "http://www.lagers.org.uk/processing3/guibuilder/G4PTool.txt", "download": "http://www.lagers.org.uk/processing3/guibuilder/G4PTool.zip" diff --git a/content/contributions/GR_Infinidecimal_Canvas.json b/content/contributions/GR_Infinidecimal_Canvas.json deleted file mode 100644 index 7fd0166f2..000000000 --- a/content/contributions/GR_Infinidecimal_Canvas.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "GR Infinidecimal Canvas", - "authors": [ - "[C. Sina Cetin](http://rect.dev)" - ], - "url": "http://rect.dev/infinidecimal", - "categories": [ - "Utilities" - ], - "sentence": "A numeric canvas that stores the image as a number array to create visuals with arbitrary ranges.", - "paragraph": "Infinidecimal maintains an array of numbers to represent the canvas. It uses \"intensity\" to represent color. This way, the color resolution and range is as high as the resolution and range of a floating-point number.", - "type": "library", - "packages": [ - { - "mode": "java", - "minRevision": "269", - "maxRevision": "270", - "props": "https://rect.dev/processing/infinidecimal/GRInfinidecimalCanvas.txt", - "download": "https://rect.dev/processing/infinidecimal/GRInfinidecimalCanvas.zip" - } - ] -} \ No newline at end of file diff --git a/content/contributions/GaussSense_SDK_for_Processing.json b/content/contributions/GaussSense_SDK_for_Processing.json deleted file mode 100644 index d915994d7..000000000 --- a/content/contributions/GaussSense_SDK_for_Processing.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "GaussSense SDK for Processing", - "authors": [ - "[GaussToys Inc.](http://gausstoys.com)" - ], - "url": "http://developers.gausstoys.com/processing/", - "categories": [ - "Hardware" - ], - "sentence": "Library to use the [GaussSense](http://gausstoys.com/) in [Processing](https://processing.org).", - "paragraph": "Mini/Basic/Advanced GaussSense are supported in this library.", - "type": "library", - "packages": [ - { - "mode": "java", - "minRevision": "0", - "maxRevision": "0", - "props": "http://developers.gausstoys.com/processing/GaussSense.txt", - "download": "http://developers.gausstoys.com/processing/GaussSense.zip" - } - ] -} \ No newline at end of file diff --git a/content/contributions/Getting_Started.es.json b/content/contributions/Getting_Started.es.json deleted file mode 100644 index 8cc81c514..000000000 --- a/content/contributions/Getting_Started.es.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "name": "Primeros Pasos", - "authors": [ - "[Jae Hyun](http://www.github.com/jaewhyun)" - ], - "url": "http://www.github.com/jaewhyun/GettingStarted", - "categories": null, - "sentence": "Una Herramienta que provee una rápida introducción al Entorno de Desarrollo Processing (PDE) para usuarios nuevos o principiantes.", - "paragraph": "", - "id": "233", - "type": "tool", - "packages": [ - { - "mode": "java", - "minRevision": "228", - "maxRevision": "0", - "props": "https://github.com/jaewhyun/GettingStarted/releases/download/latest/GettingStarted.txt", - "download": "https://github.com/jaewhyun/GettingStarted/releases/download/latest/GettingStarted.zip" - } - ] -} diff --git a/content/contributions/GifAnimation.json b/content/contributions/GifAnimation.json index fab798301..b9b029931 100644 --- a/content/contributions/GifAnimation.json +++ b/content/contributions/GifAnimation.json @@ -1,21 +1,22 @@ { "name": "GifAnimation", "authors": [ - "[Patrick Meister (extrapixel)](http://www.extrapixel.ch)" + "[Patrick Meister, Jerome Saint-Clair](http://www.extrapixel.ch)" ], - "url": "http://extrapixel.github.io/gif-animation/", + "url": "https://github.com/extrapixel/gif-animation", "categories": [ "I/O" ], - "sentence": "Play, import and export gif animations. Render to GIF!", + "sentence": "A library to play and export GIF animations.", + "paragraph": "Processing v3.x port by [Jerome Saint-Clair (01010101)](http://saint-clair.net/). GIFEncoder & GIFDecoder classes by Kevin Weiner.", "type": "library", "packages": [ { "mode": "java", - "minRevision": "0", - "maxRevision": "228", - "props": "http://www.extrapixel.ch/processing/gifAnimation/gifAnimation.txt", - "download": "http://www.extrapixel.ch/processing/gifAnimation/gifAnimation.zip" + "minRevision": "0246", + "maxRevision": "0", + "props": "https://fox-gieg.com/patches/processing/libraries/gifAnimation/gifAnimation.txt", + "download": "https://fox-gieg.com/patches/processing/libraries/gifAnimation/gifAnimation.zip" } ] } \ No newline at end of file diff --git a/content/contributions/Git_Manager.es.json b/content/contributions/Git_Manager.es.json deleted file mode 100644 index c59b7ef1d..000000000 --- a/content/contributions/Git_Manager.es.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "Administrador Git", - "authors": [ - "[Joel Moniz](http://joelmoniz.com)" - ], - "url": "http://joelmoniz.com/git-manager", - "categories": null, - "sentence": "Un cliente gráfico de GIT para Processing", - "paragraph": "Una herramienta que actúa como una interfaz completa y conveniente para usuarios de varios servicios de almacenamiento de repositorios GIT, y que integra todas las ventajas del control de versiones con Processing.", - "lastUpdated": "1443010051000", - "id": "160", - "type": "tool", - "packages": [ - { - "mode": "java", - "minRevision": "0242", - "maxRevision": "0", - "props": "https://github.com/joelmoniz/Git-Manager/releases/download/latest/GitManager.txt", - "download": "https://github.com/joelmoniz/Git-Manager/releases/download/latest/GitManager.zip" - } - ] -} diff --git a/content/contributions/HPGLGraphics.json b/content/contributions/HPGLGraphics.json index d550096d5..cc19a6e24 100644 --- a/content/contributions/HPGLGraphics.json +++ b/content/contributions/HPGLGraphics.json @@ -1,7 +1,7 @@ { "name": "HPGLGraphics", "authors": [ - "[Ciaron Linstead](http://ciaron.net)" + "Ciaron Linstead" ], "url": "http://ciaron.net/HPGLGraphics", "categories": [ diff --git a/content/contributions/ImageLoader.json b/content/contributions/ImageLoader.json index 1bc79991c..779b47f27 100644 --- a/content/contributions/ImageLoader.json +++ b/content/contributions/ImageLoader.json @@ -1,7 +1,7 @@ { "name": "ImageLoader", "authors": [ - "[Mathias Markl](http://www.mukprojects.at)" + "Mathias Markl" ], "url": "https://github.com/keshrath/ImageLoader", "categories": [ diff --git a/content/contributions/JarMatey.json b/content/contributions/JarMatey.json index 2d68d945c..de7ed4a44 100644 --- a/content/contributions/JarMatey.json +++ b/content/contributions/JarMatey.json @@ -1,9 +1,9 @@ { "name": "JarMatey", "authors": [ - "[Kevin Workman](http://StaticVoidGames.com)" + "[Kevin Workman](https://happycoding.io/)" ], - "url": "http://StaticVoidGames.com/JarMatey/", + "url": "", "categories": null, "sentence": "A utility that creates a self-extracting jar that runs on any platform.", "paragraph": "This is a workaround for Processing only exporting applications.", diff --git a/content/contributions/JavaDoc.json b/content/contributions/JavaDoc.json new file mode 100644 index 000000000..822d4caa1 --- /dev/null +++ b/content/contributions/JavaDoc.json @@ -0,0 +1,20 @@ +{ + "name": "JavaDoc", + "authors": [ + "[Henning Kiel](https://github.com/hkiel)" + ], + "url": "https://github.com/hkiel/JavaDoc", + "categories": null, + "sentence": "Generate JavaDoc for sketch.", + "paragraph": "", + "type": "tool", + "packages": [ + { + "mode": "java", + "minRevision": "0", + "maxRevision": "0", + "props": "https://github.com/hkiel/JavaDoc/releases/latest/download/JavaDoc.txt", + "download": "https://github.com/hkiel/JavaDoc/releases/latest/download/JavaDoc.zip" + } + ] +} \ No newline at end of file diff --git a/content/contributions/Joon's_Renderer.json b/content/contributions/Joon's_Renderer.json new file mode 100644 index 000000000..d1547a388 --- /dev/null +++ b/content/contributions/Joon's_Renderer.json @@ -0,0 +1,23 @@ +{ + "name": "Joon's Renderer", + "categories": [ + "3D" + ], + "authors": [ + "[Joon Hyub Lee](https://sketch.kaist.ac.kr/people/joonhyublee)" + ], + "url": "https://github.com/joonhyublee/joons-renderer", + "sentence": "Sunflow raytracing for Processing.", + "paragraph": "", + "lastUpdated": "0", + "type": "library", + "packages": [ + { + "mode": "java", + "minRevision": "266", + "maxRevision": "0", + "props": "https://fox-gieg.com/patches/processing/libraries/joons/joons.txt", + "download": "https://fox-gieg.com/patches/processing/libraries/joons/joons.zip" + } + ] +} \ No newline at end of file diff --git a/content/contributions/LazyGui.json b/content/contributions/LazyGui.json new file mode 100644 index 000000000..7dd74f28c --- /dev/null +++ b/content/contributions/LazyGui.json @@ -0,0 +1,23 @@ +{ + "name": "LazyGui", + "url": "https://github.com/KrabCode/LazyGui", + "categories": [ + "GUI" + ], + "authors": [ + "[Jakub 'Krab' Rak](https://github.com/KrabCode)" + ], + "sentence": "Feature rich, visually minimalist GUI for a smooth tinkering experience.", + "paragraph": "Make more complex scenes and animations faster by not mentioning any control elements or folders in setup(). Only ask for their values in draw() at unique string paths and let the GUI take care of the windows and control elements. Features a json save system with autosave on program exit, copy/paste, undo/redo, these control elements: [slider, 2D plot, color picker, gradient picker, button, toggle, text input, radio], and much more... Works on Windows, Mac and Linux.", + "imports": "com.krab.lazy", + "type": "library", + "packages": [ + { + "mode": "java", + "minRevision": "0", + "maxRevision": "0", + "props": "https://github.com/KrabCode/LazyGui/releases/download/latest/LazyGui.txt", + "download": "https://github.com/KrabCode/LazyGui/releases/download/latest/LazyGui.zip" + } + ] +} \ No newline at end of file diff --git a/content/contributions/Leap_Motion_for_Processing.json b/content/contributions/Leap_Motion_for_Processing.json index 3287e6a74..f6fa644ed 100644 --- a/content/contributions/Leap_Motion_for_Processing.json +++ b/content/contributions/Leap_Motion_for_Processing.json @@ -1,7 +1,7 @@ { "name": "Leap Motion for Processing", "authors": [ - "[Darius Morawiec](http://nok.onl)" + "Darius Morawiec" ], "url": "https://github.com/nok/leap-motion-processing", "categories": [ diff --git a/content/contributions/Learning_Processing_2nd_Edition.json b/content/contributions/Learning_Processing_2nd_Edition.json deleted file mode 100644 index 3607fe4cf..000000000 --- a/content/contributions/Learning_Processing_2nd_Edition.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "name": "Learning Processing 2nd Edition", - "categories": [ - "Books" - ], - "authors": [ - "[Daniel Shiffman](http://shiffman.net)" - ], - "url": "http://learningprocessing.com", - "sentence": "All examples from the second edition of Learning Processing.", - "paragraph": "All examples from the second edition of Learning Processing: A Beginner's Guide to Programming Images, Animation, and Interaction.", - "minVersion": "0", - "maxVersion": "0", - "type": "examples", - "packages": [ - { - "mode": "java", - "minRevision": "0", - "maxRevision": "0", - "props": "http://shiffman.net/p5/examples/learningprocessing2.txt", - "download": "http://shiffman.net/p5/examples/learningprocessing2.zip" - } - ] -} \ No newline at end of file diff --git a/content/contributions/Most_Pixels_Ever.json b/content/contributions/Most_Pixels_Ever.json deleted file mode 100644 index daf896595..000000000 --- a/content/contributions/Most_Pixels_Ever.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "Most Pixels Ever", - "authors": [ - "[Daniel Shiffman](http://shiffman.net)" - ], - "url": "https://github.com/shiffman/Most-Pixels-Ever-Processing", - "categories": [ - "Utilities" - ], - "sentence": "Framework for spanning Processing sketches across multiple screens.", - "paragraph": "Through server / client communication multiple sketches can be run on separate machines and synced.", - "type": "library", - "packages": [ - { - "mode": "java", - "minRevision": "246", - "maxRevision": "0", - "props": "http://shiffman.net/p5/libraries/processing3/mpe/mpe.txt", - "download": "http://shiffman.net/p5/libraries/processing3/mpe/mpe.zip" - } - ] -} \ No newline at end of file diff --git a/content/contributions/MuKCast.json b/content/contributions/MuKCast.json index 8aa6e9ba8..de9cd9b89 100644 --- a/content/contributions/MuKCast.json +++ b/content/contributions/MuKCast.json @@ -1,7 +1,7 @@ { "name": "MuKCast", "authors": [ - "[Mathias Markl](http://www.mukprojects.at)" + "Mathias Markl" ], "url": "https://github.com/keshrath/MuKCast", "categories": [ diff --git a/content/contributions/Myo_for_Processing.json b/content/contributions/Myo_for_Processing.json index 282873ce3..52fbf35d2 100644 --- a/content/contributions/Myo_for_Processing.json +++ b/content/contributions/Myo_for_Processing.json @@ -1,14 +1,14 @@ { "name": "Myo for Processing", "authors": [ - "[Darius Morawiec](http://nok.onl)" + "Darius Morawiec" ], "url": "https://github.com/nok/myo-processing", "categories": [ "Hardware" ], - "sentence": "Library to use the [Myo](https://www.thalmic.com) in [Processing](http://processing.org/).", - "paragraph": "The [Myo](https://www.thalmic.com) armband lets you use the electrical activity in your muscles to wirelessly control your computer, phone, and other favorite digital technologies. With the wave of your hand, it will transform how you interact with your digital world.", + "sentence": "Library to use the Myo in [Processing](http://processing.org/).", + "paragraph": "The Myo armband lets you use the electrical activity in your muscles to wirelessly control your computer, phone, and other favorite digital technologies. With the wave of your hand, it will transform how you interact with your digital world.", "type": "library", "packages": [ { diff --git a/content/contributions/Novation_Launch_Control_client.json b/content/contributions/Novation_Launch_Control_client.json index b616eb0d1..a279d0e2f 100644 --- a/content/contributions/Novation_Launch_Control_client.json +++ b/content/contributions/Novation_Launch_Control_client.json @@ -8,7 +8,7 @@ "I/O" ], "sentence": "Control your sketches using the knobs, pads and slider from MIDI controllers such as Novation ® Launch Control®.", - "paragraph": "Once connected to your computer, use the MIDI controller to control your sketch by \\", + "paragraph": "Once connected to your computer, use the MIDI controller to control your sketch by adjusting the values of variables. This is library is not created by or supported by Novation.", "type": "library", "packages": [ { diff --git a/content/contributions/OCT.json b/content/contributions/OCT.json index 730eae221..f81d080ec 100644 --- a/content/contributions/OCT.json +++ b/content/contributions/OCT.json @@ -1,7 +1,7 @@ { "name": "OCT", "authors": [ - "[Thomas Wegener](http://www.thomaswegener.ch)" + "Thomas Wegener" ], "url": "https://github.com/thwegene/OCT", "categories": [ diff --git a/content/contributions/OpenCV_for_Processing.json b/content/contributions/OpenCV_for_Processing.json index b655a7f2a..726afee34 100644 --- a/content/contributions/OpenCV_for_Processing.json +++ b/content/contributions/OpenCV_for_Processing.json @@ -1,22 +1,23 @@ { "name": "OpenCV for Processing", - "authors": [ - "[Greg Borenstein](http://gregborenstein.com)" - ], - "url": "https://github.com/atduskgreg/opencv-processing", "categories": [ "Video & Vision" ], + "authors": [ + "[Greg Borenstein](http://gregborenstein.com) and [Florian Bruggisser](https://broox.ch/)" + ], + "url": "https://github.com/cansik/opencv-processing", "sentence": "Computer vision with OpenCV.", "paragraph": "Based on the official OpenCV Java API. A nice Processing-style API for common tasks and access to the full power of the OpenCV API for the advanced stuff.", + "lastUpdated": "0", "type": "library", "packages": [ { "mode": "java", "minRevision": "0", "maxRevision": "0", - "props": "https://github.com/atduskgreg/opencv-processing/releases/download/latest/opencv_processing.txt", - "download": "https://github.com/atduskgreg/opencv-processing/releases/download/latest/opencv_processing.zip" + "props": "https://github.com/cansik/opencv-processing/releases/download/contribution-manager/opencv_processing.txt", + "download": "https://github.com/cansik/opencv-processing/releases/download/contribution-manager/opencv_processing.zip" } ] } \ No newline at end of file diff --git a/content/contributions/Open_Kinect_for_Processing.json b/content/contributions/Open_Kinect_for_Processing.json deleted file mode 100644 index ec3a47b3b..000000000 --- a/content/contributions/Open_Kinect_for_Processing.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "Open Kinect for Processing", - "authors": [ - "[Daniel Shiffman](http://shiffman.net/) and [Thomas Sanchez](http://codigogenerativo.com/)" - ], - "url": "http://shiffman.net/p5/kinect/", - "categories": [ - "Video & Vision" - ], - "sentence": "A Mac OS X Kinect implementation using open source drivers (libfreenect).", - "paragraph": "This library is for quick and easy access to the raw data from the Microsoft Kinect v1 and v2. It provides depth, RGB, and IR images. It also allows you to control the sensor's tilt programmatically.", - "type": "library", - "packages": [ - { - "mode": "java", - "minRevision": "227", - "maxRevision": "0", - "props": "http://shiffman.net/p5/libraries/openkinect_processing/openkinect_processing.txt", - "download": "http://shiffman.net/p5/libraries/openkinect_processing/openkinect_processing.zip" - } - ] -} \ No newline at end of file diff --git a/content/contributions/Pd4P3.json b/content/contributions/Pd4P3.json index abda8b180..36e26a8e9 100644 --- a/content/contributions/Pd4P3.json +++ b/content/contributions/Pd4P3.json @@ -8,7 +8,7 @@ "Sound" ], "sentence": "A real-time audio synthesis library of Pure Data's signal objects for Processing 3 and 4.", - "paragraph": "", + "paragraph": "Small bug fixes.", "lastUpdated": "0", "type": "library", "packages": [ diff --git a/content/contributions/Perceptual_colorpicker.json b/content/contributions/Perceptual_colorpicker.json deleted file mode 100644 index 6a82579e2..000000000 --- a/content/contributions/Perceptual_colorpicker.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "name": "Perceptual colorpicker", - "authors": [ - "[Olivier Vicario](https://www.perceptualcolor.org)" - ], - "url": "https://www.perceptualcolor.org", - "categories": null, - "sentence": "Choose from 3 to 7 colors from CIE Lab or Lch with different graphic tools.", - "paragraph": "PCP is a colorpicker that use a background to display different color plans from CIE Lab and LcH color spaces i.e. a/b, b/L, a/L, c/H, c/L, H/L. The third coordinate which is not in the plane define it in the colors volume. It can vary with slider as a constant or as a gradient. Upon these background you can use different tools i.e. segment, spline, polygon, related or palette to choose set of colors. Colors coordinates can be display in CIE Lab, CIE LcH, WEB, sRGB code. You can snapshot the whole user interface or just the color palette with coordinates as png file. You can also save in the clipboard the web codes.", - "type": "tool", - "packages": [ - { - "mode": "java", - "minRevision": "0", - "maxRevision": "0", - "props": "https://perceptualcolor.org/distribution/PerceptualColorPicker/download/PerceptualColorPicker.txt", - "download": "https://perceptualcolor.org/distribution/PerceptualColorPicker/download/PerceptualColorPicker.zip" - } - ] -} \ No newline at end of file diff --git a/content/contributions/ProcMod_player.json b/content/contributions/ProcMod_player.json index d37d3e24a..f1cffd99c 100644 --- a/content/contributions/ProcMod_player.json +++ b/content/contributions/ProcMod_player.json @@ -1,7 +1,7 @@ { "name": "ProcMod player", "authors": [ - "[Arnaud Loonstra](http://sphaero.org)" + "Arnaud Loonstra" ], "url": "http://github.com/sphaero/procmod", "categories": [ diff --git a/content/contributions/Processing_for_Android,_2nd_Edition.json b/content/contributions/Processing_for_Android,_2nd_Edition.json new file mode 100644 index 000000000..123d4ccf7 --- /dev/null +++ b/content/contributions/Processing_for_Android,_2nd_Edition.json @@ -0,0 +1,23 @@ +{ + "name": "Processing for Android, 2nd Edition", + "categories": [ + "Books" + ], + "authors": [ + "[Andres Colubri](https://andrescolubri.net/)" + ], + "url": "https://andrescolubri.net/processing-for-android-book/", + "sentence": "Code examples of the book \"Processing for Android: Create Mobile, Sensor-Aware, and XR Applications Using Processing\" (Apress, 2023).", + "paragraph": "", + "lastUpdated": "0", + "type": "examples", + "packages": [ + { + "mode": "java", + "minRevision": "0", + "maxRevision": "0", + "props": "https://github.com/Apress/Processing-for-Android-Second-Edition/releases/download/latest/processing-for-android-examples.txt", + "download": "https://github.com/Apress/Processing-for-Android-Second-Edition/releases/download/latest/processing-for-android-examples.zip" + } + ] +} \ No newline at end of file diff --git a/content/contributions/Python_Mode_for_Processing_3.json b/content/contributions/Python_Mode_for_Processing_3.json index 1bb22187f..9225e80ca 100644 --- a/content/contributions/Python_Mode_for_Processing_3.json +++ b/content/contributions/Python_Mode_for_Processing_3.json @@ -13,8 +13,8 @@ "mode": "java", "minRevision": "246", "maxRevision": "270", - "props": "https://py.processing.org/3/PythonMode.txt", - "download": "https://py.processing.org/3/PythonMode.zip" + "props": "https://contribs.processing.org/pythonmode/3/PythonMode.txt", + "download": "https://contribs.processing.org/pythonmode/3/PythonMode.zip" } ] } \ No newline at end of file diff --git a/content/contributions/Python_Mode_for_Processing_4.json b/content/contributions/Python_Mode_for_Processing_4.json index 008cd7b23..383b85a89 100644 --- a/content/contributions/Python_Mode_for_Processing_4.json +++ b/content/contributions/Python_Mode_for_Processing_4.json @@ -13,8 +13,8 @@ "mode": "java", "minRevision": "1279", "maxRevision": "0", - "props": "https://py.processing.org/4/PythonMode.txt", - "download": "https://py.processing.org/4/PythonMode.zip" + "props": "https://contribs.processing.org/pythonmode/4/PythonMode.txt", + "download": "https://contribs.processing.org/pythonmode/4/PythonMode.zip" } ] } \ No newline at end of file diff --git a/content/contributions/QRCode.json b/content/contributions/QRCode.json deleted file mode 100644 index cad304136..000000000 --- a/content/contributions/QRCode.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "QRCode", - "authors": [ - "[Daniel Shiffman](http://shiffman.net/)" - ], - "url": "http://shiffman.net/p5/qrcode-processing/", - "categories": [ - "Data" - ], - "sentence": "Reads QR Code images, a two-dimensional barcode format.", - "paragraph": "", - "type": "library", - "packages": [ - { - "mode": "java", - "minRevision": "227", - "maxRevision": "0", - "props": "http://www.shiffman.net/p5/libraries/qrcode/qrcodeprocessing.txt", - "download": "http://www.shiffman.net/p5/libraries/qrcode/qrcodeprocessing.zip" - } - ] -} \ No newline at end of file diff --git a/content/contributions/QueasyCam.json b/content/contributions/QueasyCam.json index e936c983d..7b71a8f90 100644 --- a/content/contributions/QueasyCam.json +++ b/content/contributions/QueasyCam.json @@ -1,7 +1,7 @@ { "name": "QueasyCam", "authors": [ - "[Josh Castle](https://twitter.com/jrc03c)" + "Josh Castle" ], "url": "https://github.com/jrc03c/queasycam", "categories": [ diff --git a/content/contributions/Redis.json b/content/contributions/Redis.json index 6ca8537cb..b69b189dc 100644 --- a/content/contributions/Redis.json +++ b/content/contributions/Redis.json @@ -1,7 +1,7 @@ { "name": "Redis", "authors": [ - "[Darius Morawiec](http://nok.onl)" + "Darius Morawiec" ], "url": "https://github.com/nok/redis-processing", "categories": [ diff --git a/content/contributions/Reference_Tool.json b/content/contributions/Reference_Tool.json index 451f18ee6..50d847810 100644 --- a/content/contributions/Reference_Tool.json +++ b/content/contributions/Reference_Tool.json @@ -3,7 +3,7 @@ "authors": [ "[Jae Hyun](https://www.github.com/jaewhyun)" ], - "url": "https://www.github.com/ReferenceTool", + "url": "https://github.com/jaewhyun/ReferenceTool", "categories": null, "sentence": "A Tool that provides a built in reference for the Processing Development Environment.", "paragraph": "", diff --git a/content/contributions/Scratch.json b/content/contributions/Scratch.json deleted file mode 100644 index 1dcc4ebaf..000000000 --- a/content/contributions/Scratch.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "Scratch", - "authors": [ - "[Mike Barkmin](https://barkmin.eu)" - ], - "url": "https://github.com/mikebarkmin/processing-library-scratch", - "categories": [ - "Utilities" - ], - "sentence": "Provides classes to match the functionality of scratch", - "paragraph": "", - "type": "library", - "packages": [ - { - "mode": "java", - "minRevision": "270", - "maxRevision": "0", - "props": "https://www.barkmin.eu/processing-library-scratch/download/scratch.txt", - "download": "https://www.barkmin.eu/processing-library-scratch/download/scratch.zip" - } - ] -} \ No newline at end of file diff --git a/content/contributions/SerialRecord.json b/content/contributions/SerialRecord.json index b2ec0ef9f..c52561b46 100644 --- a/content/contributions/SerialRecord.json +++ b/content/contributions/SerialRecord.json @@ -1,16 +1,15 @@ { "name": "SerialRecord", - "categories": [ - "Data", - "I/O" - ], "authors": [ "[Oliver Steele](steele@osteele.com)" ], "url": "https://osteele.github.io/Processing_SerialRecord/", - "sentence": "The SerialRecord library for Processing sends and receive records, containing multiple integers, over the serial port.", - "paragraph": "It is intended for novice programmers: it is designed to be easy to use, to detect when it is used incorrectly, and to detect and report when it receives invalid data. It also has an option to display the data sent to the and received from the serial port on the canvas.", - "lastUpdated": "0", + "categories": [ + "Data", + "I/O" + ], + "sentence": "Send and receive multiple values over the serial port, with error reporting for bad input and for common cases such as mismatched value counts, and with the ability to display sent and received data to the Processing console and canvas. It includes a utility function to find the first available serial port that follows the Arduino naming scheme.", + "paragraph": "This library intended for novice programmers: it is designed to be easy to use, to detect when it is used incorrectly, and to detect and report when it receives invalid data. It also has an option to display the data sent to the and received from the serial port on the canvas.", "type": "library", "packages": [ { diff --git a/content/contributions/Shader_Mode.json b/content/contributions/Shader_Mode.json index e125f63ca..c3a4f44ef 100644 --- a/content/contributions/Shader_Mode.json +++ b/content/contributions/Shader_Mode.json @@ -1,7 +1,7 @@ { "name": "Shader Mode", "authors": [ - "[Izza Tariq](https://www.izzatariq.com/)" + "Izza Tariq" ], "url": "https://github.com/Izza11/shader-mode", "sentence": "Edit GLSL shaders in Processing", diff --git a/content/contributions/ShortMessage.json b/content/contributions/ShortMessage.json index 09d3fe976..d6421e9eb 100644 --- a/content/contributions/ShortMessage.json +++ b/content/contributions/ShortMessage.json @@ -1,7 +1,7 @@ { "name": "ShortMessage", "authors": [ - "[Hamzeen. H.](http://www.hamzeen.com)" + "Hamzeen. H." ], "url": "http://hamzeen.github.io/smsP5", "categories": [ diff --git a/content/contributions/SimpleOpenNI.json b/content/contributions/SimpleOpenNI.json new file mode 100644 index 000000000..d803f012c --- /dev/null +++ b/content/contributions/SimpleOpenNI.json @@ -0,0 +1,22 @@ +{ + "name": "SimpleOpenNI", + "authors": [ + "[Max Rheiner & Antonio Vega](http://code.google.com/p/simple-openni/)" + ], + "url": "https://github.com/totovr/SimpleOpenNI", + "categories": [ + "3D" + ], + "sentence": "A simple wrapper for OpenNI (Kinect-Library).", + "paragraph": "", + "type": "library", + "packages": [ + { + "mode": "java", + "minRevision": "266", + "maxRevision": "0", + "props": "https://fox-gieg.com/patches/processing/libraries/SimpleOpenNI/SimpleOpenNI.txt", + "download": "https://fox-gieg.com/patches/processing/libraries/SimpleOpenNI/SimpleOpenNI.zip" + } + ] +} \ No newline at end of file diff --git a/content/contributions/Simple_Multi-Touch_(SMT).json b/content/contributions/Simple_Multi-Touch_(SMT).json deleted file mode 100644 index 62a3d414c..000000000 --- a/content/contributions/Simple_Multi-Touch_(SMT).json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "Simple Multi-Touch (SMT)", - "authors": [ - "[Erik Paluka](http://www.erikpaluka.com/), [Kalev Kalda Sikes](http://vialab.science.uoit.ca/portfolio/kalev-kalda-sikes), [Zachary Cook](http://vialab.science.uoit.ca/portfolio/zachary-cook), [Dr. Mark Hancock](http://markhancock.ca/), and [Dr. Christopher Collins](http://vialab.science.uoit.ca/portfolio/christopher-m-collins)" - ], - "url": "http://vialab.science.uoit.ca/SMT/", - "categories": [ - "I/O" - ], - "sentence": "Multi-touch prototyping and development made simple.", - "paragraph": "SMT provides back-end device support for Tuio, Windows Touch* ( requires [VC2012 Redistributable](http://www.microsoft.com/en-au/download/details.aspx?id=30679) ), SmartSDK*, Leap Motion*, and Mouse Emulation. *Windows-Only", - "type": "library", - "packages": [ - { - "mode": "java", - "minRevision": "0", - "maxRevision": "228", - "props": "http://vialab.science.uoit.ca/smt/dl/SMT.txt", - "download": "http://vialab.science.uoit.ca/smt/dl/SMT.zip" - } - ] -} \ No newline at end of file diff --git a/content/contributions/Skweezee_for_Processing.json b/content/contributions/Skweezee_for_Processing.json deleted file mode 100644 index 00ad9bdcf..000000000 --- a/content/contributions/Skweezee_for_Processing.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "name": "Skweezee for Processing", - "authors": [ - "[Bert Vandenberghe @ eMedia Research Lab, KU Leuven](http://www.skweezee.net)" - ], - "url": "http://www.skweezee.net/processing", - "categories": [ - "Hardware", - "I/O" - ], - "sentence": "Create rich interactions based on physical squeezes.", - "paragraph": "A Skweezee is an interactive system based on the physical deformation of soft, conductive materials. Skweezees implement squeeze interactions, including both input (squeezes) and output (actuation). This library is a connecting link between an Arduino that continuously measures electrical resistances within conductive material (input sensing) and a Processing sketch generating output (actuation). The library offers vector and time series analysis to extract features from the sensed signals in order to generate rich actuation that preserves dynamics of the squeezes. More info on Skweezees and rich squeeze interactions: www.skweezee.net", - "type": "library", - "packages": [ - { - "mode": "java", - "minRevision": "228", - "maxRevision": "0", - "props": "http://skweezee.net/processing/download/SkweezeeForProcessing.txt", - "download": "http://skweezee.net/processing/download/SkweezeeForProcessing.zip" - } - ] -} \ No newline at end of file diff --git a/content/contributions/SoundCloud.json b/content/contributions/SoundCloud.json index 4971982f0..58e5ec65d 100644 --- a/content/contributions/SoundCloud.json +++ b/content/contributions/SoundCloud.json @@ -1,13 +1,13 @@ { "name": "SoundCloud", "authors": [ - "[Darius Morawiec](http://nok.onl)" + "Darius Morawiec" ], "url": "https://github.com/nok/soundcloud-processing", "categories": [ "Data" ], - "sentence": "Unofficial Java library, which simplifies the use of the official [SoundCloud Java API wrapper](https://github.com/soundcloud/java-api-wrapper).", + "sentence": "Unofficial Java library, which simplifies the use of the official SoundCloud Java API wrapper.", "paragraph": "", "type": "library", "packages": [ diff --git a/content/contributions/Sudden_Motion_Sensor.json b/content/contributions/Sudden_Motion_Sensor.json deleted file mode 100644 index 21121057f..000000000 --- a/content/contributions/Sudden_Motion_Sensor.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "Sudden Motion Sensor", - "authors": [ - "[Daniel Shiffman](http://www.shiffman.net)" - ], - "url": "http://www.shiffman.net/p5/sms/", - "categories": [ - "Hardware" - ], - "sentence": "Interface to the Apple Sudden Motion Sensor in MacBooks.", - "paragraph": "", - "type": "library", - "packages": [ - { - "mode": "java", - "minRevision": "0", - "maxRevision": "0", - "props": "http://www.shiffman.net/p5/libraries/sms/sms.txt", - "download": "http://www.shiffman.net/p5/libraries/sms/sms.zip" - } - ] -} \ No newline at end of file diff --git a/content/contributions/Tablet.json b/content/contributions/Tablet.json index ab847e9b4..b1fd5f618 100644 --- a/content/contributions/Tablet.json +++ b/content/contributions/Tablet.json @@ -3,7 +3,7 @@ "authors": [ "[Andres Colubri](http://andrescolubri.net/)" ], - "url": "http://interfaze.info/libraries/tablet/", + "url": "http://www.lagers.org.uk/s4p/", "categories": [ "I/O" ], diff --git a/content/contributions/The_MidiBus.json b/content/contributions/The_MidiBus.json index 22f2d43d5..4af0d4e63 100644 --- a/content/contributions/The_MidiBus.json +++ b/content/contributions/The_MidiBus.json @@ -1,9 +1,9 @@ { "name": "The MidiBus", "authors": [ - "[Severin Smith](http://www.smallbutdigital.com/)" + "Severin Smith" ], - "url": "http://www.smallbutdigital.com/themidibus.php", + "url": "", "categories": [ "Sound" ], diff --git a/content/contributions/The_Nature_of_Code.json b/content/contributions/The_Nature_of_Code.json deleted file mode 100644 index 9ada06ce0..000000000 --- a/content/contributions/The_Nature_of_Code.json +++ /dev/null @@ -1,24 +0,0 @@ -{ - "name": "The Nature of Code", - "categories": [ - "Books" - ], - "authors": [ - "[Daniel Shiffman](http://shiffman.net)" - ], - "url": "http://natureofcode.com", - "sentence": "All examples from The Nature of Code book.", - "paragraph": "How can we capture the unpredictable evolutionary and emergent properties of nature in software? How can understanding the mathematical principles behind our physical world help us to create digital worlds? This book focuses on the programming strategies and techniques behind computer simulations of natural systems using Processing.", - "minVersion": "0", - "maxVersion": "0", - "type": "examples", - "packages": [ - { - "mode": "java", - "minRevision": "0", - "maxRevision": "0", - "props": "http://shiffman.net/p5/examples/natureofcode.txt", - "download": "http://shiffman.net/p5/examples/natureofcode.zip" - } - ] -} \ No newline at end of file diff --git a/content/contributions/ToxicLibs.json b/content/contributions/ToxicLibs.json deleted file mode 100644 index c5c502215..000000000 --- a/content/contributions/ToxicLibs.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "ToxicLibs", - "authors": [ - "[Karsten Schmidt](http://postspectacular.com/) (updated for P3 by Daniel Shiffman)" - ], - "url": "http://toxiclibs.org/", - "categories": [ - "Compilation" - ], - "sentence": "toxiclibs is an independent, open source library collection for computational design tasks.", - "paragraph": "toxiclibs is an independent, open source library collection for computational design tasks. The classes are purposefully kept fairly generic in order to maximize re-use in different contexts ranging from generative design, animation, interaction/interface design, data visualization to architecture and digital fabrication, use as teaching tool and more.", - "type": "library", - "packages": [ - { - "mode": "java", - "minRevision": "246", - "maxRevision": "0", - "props": "http://shiffman.net/p5/libraries/processing3/toxiclibs/toxiclibs.txt", - "download": "http://shiffman.net/p5/libraries/processing3/toxiclibs/toxiclibs.zip" - } - ] -} \ No newline at end of file diff --git a/content/contributions/WOVNS_Examples.json b/content/contributions/WOVNS_Examples.json index ab16dc920..dd685516c 100644 --- a/content/contributions/WOVNS_Examples.json +++ b/content/contributions/WOVNS_Examples.json @@ -2,9 +2,9 @@ "name": "WOVNS Examples", "categories": null, "authors": [ - "[David Mellis](http://web.media.mit.edu/~mellis/) for [WOVNS](http://wovns.com/)" + "David Mellis for [WOVNS](http://wovns.com/)" ], - "url": "http://www.wovns.com/tutorials/designing-computational-textiles-with-processing/", + "url": "", "sentence": "Drawing computational textile patterns for the WOVNS platform.", "paragraph": "", "lastUpdated": "0", diff --git a/content/contributions/WootingKeyboard.json b/content/contributions/WootingKeyboard.json index 6923a6200..b8c91aefc 100644 --- a/content/contributions/WootingKeyboard.json +++ b/content/contributions/WootingKeyboard.json @@ -1,16 +1,16 @@ { "name": "WootingKeyboard", "authors": [ - "[Shinhoo Park @ KAIST Interactive Media Lab](http://kiml.org/WootingKeyboard)" + "Shinhoo Park @ KAIST Interactive Media Lab" ], - "url": "http://kiml.org/WootingKeyboard", + "url": "https://github.com/Shinhoo/Wooting-Keyboard-Library/", "categories": [ "Data", "I/O", "Utilities" ], - "sentence": "This library can be used to analyze the raw data of the [Wooting keyboard](https://www.wooting.nl/).", - "paragraph": "The library will trigger onReadEvents when receive raw data from [Wooting keyboard](https://www.wooting.nl/). This data can be parsed into data of type String or HashMap through parseLog and parseData functions.", + "sentence": "This library can be used to analyze the raw data of the [Wooting keyboard](https://wooting.io/).", + "paragraph": "The library will trigger onReadEvents when receive raw data from [Wooting keyboard](https://wooting.io/). This data can be parsed into data of type String or HashMap through parseLog and parseData functions.", "type": "library", "packages": [ { diff --git a/content/contributions/XYscope.json b/content/contributions/XYscope.json index 240b7769e..23cb87e52 100644 --- a/content/contributions/XYscope.json +++ b/content/contributions/XYscope.json @@ -1,16 +1,16 @@ { "name": "XYscope", "authors": [ - "[Ted Davis](http://www.teddavis.org)" + "[Ted Davis](https://www.teddavis.org)" ], - "url": "http://teddavis.org/xyscope", + "url": "https://teddavis.org/xyscope", "categories": [ "Animation", "Hardware", "Sound" ], "sentence": "XYScope is a library for Processing to render graphics on a vector display (oscilloscope, laser) by converting them to audio.", - "paragraph": "This includes most primitive shapes (point, line, rect, ellipse, vertex, ...) by converting those points to waveforms (oscillators with custom wavetables) and generating audio in real time using the Minim library. Vector graphics shine on a vector display and now you can view your generative works like never before! Tested on MacOS 10.9+ / Windows / Linux (RPi!).", + "paragraph": "This includes most primitive shapes (point, line, rect, ellipse, vertex, box, sphere, torus...) by converting those points to waveforms (oscillators with custom wavetables) and generating audio in real time using the Minim library. Vector graphics shine on a vector display and now you can view your generative works like never before! Tested on MacOS 10.9+ / Windows / Linux (RPi!).", "type": "library", "packages": [ { diff --git a/content/contributions/XlsReader.json b/content/contributions/XlsReader.json index 51bd01a04..ec5f3b2b4 100644 --- a/content/contributions/XlsReader.json +++ b/content/contributions/XlsReader.json @@ -13,7 +13,7 @@ "packages": [ { "mode": "java", - "minRevision": "0", + "minRevision": "218", "maxRevision": "228", "props": "https://raw.github.com/fjenett/xlsreader-library-processing/latest/release/XlsReader.txt", "download": "https://raw.github.com/fjenett/xlsreader-library-processing/latest/release/XlsReader.zip" diff --git a/content/contributions/extruder.json b/content/contributions/extruder.json index 3ca2a6b95..f1f2c1c58 100644 --- a/content/contributions/extruder.json +++ b/content/contributions/extruder.json @@ -4,7 +4,7 @@ "3D" ], "authors": [ - "[Max Farrell](https://arcane.info/)" + "Max Farrell" ], "url": "http://maxlfarrell.gitlab.io/extruder", "sentence": "A 3d library to create extrusions", diff --git a/content/contributions/iGeo.json b/content/contributions/iGeo.json index c99d1784a..8e339b98b 100644 --- a/content/contributions/iGeo.json +++ b/content/contributions/iGeo.json @@ -16,7 +16,7 @@ "minRevision": "0", "maxRevision": "228", "props": "http://igeo.jp/igeo.txt", - "download": "http://igeo.jp/igeo.zip" + "download": "http://igeo.jp/processing3/igeo.zip" } ] } \ No newline at end of file diff --git a/content/contributions/nub.json b/content/contributions/nub.json index 800861b3d..c6968a7b9 100644 --- a/content/contributions/nub.json +++ b/content/contributions/nub.json @@ -15,7 +15,7 @@ "packages": [ { "mode": "java", - "minRevision": "268", + "minRevision": "1292", "maxRevision": "0", "props": "https://github.com/VisualComputing/nub/releases/download/latest/nub.txt", "download": "https://github.com/VisualComputing/nub/releases/download/latest/nub.zip" diff --git a/content/contributions/nyar4psg.json b/content/contributions/nyar4psg.json deleted file mode 100644 index 34335a984..000000000 --- a/content/contributions/nyar4psg.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "nyar4psg", - "authors": [ - "[R.Iizuka](http://nyatla.jp)" - ], - "url": "https://github.com/nyatla/NyARToolkit-for-Processing/", - "categories": [ - "Video & Vision" - ], - "sentence": "NyARToolkit for proce55ing(NyAR4psg) is front-end of NyARToolkit for Java. This library can easily make the AR application.", - "paragraph": "This library requires a web camera to make AR view.", - "type": "library", - "packages": [ - { - "mode": "java", - "minRevision": "227", - "maxRevision": "0", - "props": "https://github.com/nyatla/NyARToolkit-for-Processing/releases/download/latest/nyar4psg.txt", - "download": "https://github.com/nyatla/NyARToolkit-for-Processing/releases/download/latest/nyar4psg.zip" - } - ] -} \ No newline at end of file diff --git a/content/contributions/proJMS.json b/content/contributions/proJMS.json deleted file mode 100644 index eda2f32f4..000000000 --- a/content/contributions/proJMS.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "proJMS", - "authors": [ - "[Hauke Altmann](http://graffitiresearchlab.de)" - ], - "url": "http://sourceforge.net/projects/projms/", - "categories": [ - "I/O" - ], - "sentence": "Publish and consume text messages to create peer-to-peer communication between processing applications.", - "paragraph": "Implementing JMS messaging the library allows to send and receive messages to/from any other application using JMS.", - "type": "library", - "packages": [ - { - "mode": "java", - "minRevision": "0", - "maxRevision": "0", - "props": "http://www.graffitiresearchlab.de/wp-content/uploads/proJMS.txt", - "download": "http://www.graffitiresearchlab.de/wp-content/uploads/proJMS.zip" - } - ] -} \ No newline at end of file diff --git a/content/contributions/tramontanaCV.json b/content/contributions/tramontanaCV.json index e5f0afb09..3208407db 100644 --- a/content/contributions/tramontanaCV.json +++ b/content/contributions/tramontanaCV.json @@ -3,7 +3,7 @@ "authors": [ "[Pierluigi Dalla Rosa](www.pierdr.com)" ], - "url": "https://tramontana.xyz/tramontanacv", + "url": "https://tramontana.xyz/", "categories": [ "Video & Vision" ], diff --git a/content/download/releases/processing-0225-2.1.2.json b/content/download/releases/processing-0225-2.1.2.json index e282760cd..6006fadde 100644 --- a/content/download/releases/processing-0225-2.1.2.json +++ b/content/download/releases/processing-0225-2.1.2.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-2.1.2-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0225-2.1.2/processing-2.1.2-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0225-2.1.2/processing-2.1.2-windows32.zip", + "size": 113274496 } }, { "node": { "name": "processing-2.1.2-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0225-2.1.2/processing-2.1.2-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0225-2.1.2/processing-2.1.2-macosx.zip", + "size": 119719264 } }, { "node": { "name": "processing-2.1.2-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0225-2.1.2/processing-2.1.2-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0225-2.1.2/processing-2.1.2-windows64.zip", + "size": 114769586 } }, { "node": { "name": "processing-2.1.2-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0225-2.1.2/processing-2.1.2-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0225-2.1.2/processing-2.1.2-linux64.tgz", + "size": 101357136 } }, { "node": { "name": "processing-2.1.2-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0225-2.1.2/processing-2.1.2-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0225-2.1.2/processing-2.1.2-linux32.tgz", + "size": 102843339 } } ] diff --git a/content/download/releases/processing-0227-2.2.1.json b/content/download/releases/processing-0227-2.2.1.json index 4491ba89e..4f3ca2b46 100644 --- a/content/download/releases/processing-0227-2.2.1.json +++ b/content/download/releases/processing-0227-2.2.1.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-2.2.1-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0227-2.2.1/processing-2.2.1-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0227-2.2.1/processing-2.2.1-linux32.tgz", + "size": 103164503 } }, { "node": { "name": "processing-2.2.1-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0227-2.2.1/processing-2.2.1-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0227-2.2.1/processing-2.2.1-linux64.tgz", + "size": 101424320 } }, { "node": { "name": "processing-2.2.1-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0227-2.2.1/processing-2.2.1-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0227-2.2.1/processing-2.2.1-windows32.zip", + "size": 114957016 } }, { "node": { "name": "processing-2.2.1-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0227-2.2.1/processing-2.2.1-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0227-2.2.1/processing-2.2.1-windows64.zip", + "size": 116409778 } }, { "node": { "name": "processing-2.2.1-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0227-2.2.1/processing-2.2.1-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0227-2.2.1/processing-2.2.1-macosx.zip", + "size": 122562836 } } ] diff --git a/content/download/releases/processing-0228-3.0a1.json b/content/download/releases/processing-0228-3.0a1.json index 0e8ea3b44..54f6c9960 100644 --- a/content/download/releases/processing-0228-3.0a1.json +++ b/content/download/releases/processing-0228-3.0a1.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0a1-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0228-3.0a1/processing-3.0a1-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0228-3.0a1/processing-3.0a1-windows64.zip", + "size": 98667666 } }, { "node": { "name": "processing-3.0a1-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0228-3.0a1/processing-3.0a1-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0228-3.0a1/processing-3.0a1-windows32.zip", + "size": 97824587 } }, { "node": { "name": "processing-3.0a1-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0228-3.0a1/processing-3.0a1-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0228-3.0a1/processing-3.0a1-linux64.tgz", + "size": 96262007 } }, { "node": { "name": "processing-3.0a1-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0228-3.0a1/processing-3.0a1-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0228-3.0a1/processing-3.0a1-linux32.tgz", + "size": 97968402 } }, { "node": { "name": "processing-3.0a1-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0228-3.0a1/processing-3.0a1-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0228-3.0a1/processing-3.0a1-macosx.zip", + "size": 101125356 } } ] diff --git a/content/download/releases/processing-0229-3.0a2.json b/content/download/releases/processing-0229-3.0a2.json index 885cea000..4e5e44adb 100644 --- a/content/download/releases/processing-0229-3.0a2.json +++ b/content/download/releases/processing-0229-3.0a2.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0a2-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0229-3.0a2/processing-3.0a2-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0229-3.0a2/processing-3.0a2-linux32.tgz", + "size": 103467640 } }, { "node": { "name": "processing-3.0a2-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0229-3.0a2/processing-3.0a2-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0229-3.0a2/processing-3.0a2-linux64.tgz", + "size": 101770074 } }, { "node": { "name": "processing-3.0a2-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0229-3.0a2/processing-3.0a2-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0229-3.0a2/processing-3.0a2-macosx.zip", + "size": 107331980 } }, { "node": { "name": "processing-3.0a2-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0229-3.0a2/processing-3.0a2-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0229-3.0a2/processing-3.0a2-windows64.zip", + "size": 104401141 } }, { "node": { "name": "processing-3.0a2-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0229-3.0a2/processing-3.0a2-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0229-3.0a2/processing-3.0a2-windows32.zip", + "size": 103558102 } } ] diff --git a/content/download/releases/processing-0230-3.0a3.json b/content/download/releases/processing-0230-3.0a3.json index a02284a8d..abf11d271 100644 --- a/content/download/releases/processing-0230-3.0a3.json +++ b/content/download/releases/processing-0230-3.0a3.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0a3-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0230-3.0a3/processing-3.0a3-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0230-3.0a3/processing-3.0a3-linux32.tgz", + "size": 106299756 } }, { "node": { "name": "processing-3.0a3-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0230-3.0a3/processing-3.0a3-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0230-3.0a3/processing-3.0a3-linux64.tgz", + "size": 104597788 } }, { "node": { "name": "processing-3.0a3-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0230-3.0a3/processing-3.0a3-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0230-3.0a3/processing-3.0a3-macosx.zip", + "size": 110206559 } }, { "node": { "name": "processing-3.0a3-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0230-3.0a3/processing-3.0a3-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0230-3.0a3/processing-3.0a3-windows64.zip", + "size": 107226231 } }, { "node": { "name": "processing-3.0a3-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0230-3.0a3/processing-3.0a3-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0230-3.0a3/processing-3.0a3-windows32.zip", + "size": 106383045 } } ] diff --git a/content/download/releases/processing-0231-3.0a4.json b/content/download/releases/processing-0231-3.0a4.json index 4df9c4e0a..de37c4fc0 100644 --- a/content/download/releases/processing-0231-3.0a4.json +++ b/content/download/releases/processing-0231-3.0a4.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0a4-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0231-3.0a4/processing-3.0a4-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0231-3.0a4/processing-3.0a4-windows64.zip", + "size": 110056177 } }, { "node": { "name": "processing-3.0a4-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0231-3.0a4/processing-3.0a4-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0231-3.0a4/processing-3.0a4-macosx.zip", + "size": 113128952 } }, { "node": { "name": "processing-3.0a4-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0231-3.0a4/processing-3.0a4-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0231-3.0a4/processing-3.0a4-linux64.tgz", + "size": 107431449 } }, { "node": { "name": "processing-3.0a4-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0231-3.0a4/processing-3.0a4-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0231-3.0a4/processing-3.0a4-linux32.tgz", + "size": 109132510 } }, { "node": { "name": "processing-3.0a4-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0231-3.0a4/processing-3.0a4-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0231-3.0a4/processing-3.0a4-windows32.zip", + "size": 109213007 } } ] diff --git a/content/download/releases/processing-0232-3.0a5.json b/content/download/releases/processing-0232-3.0a5.json index b044b7a46..27b4cd493 100644 --- a/content/download/releases/processing-0232-3.0a5.json +++ b/content/download/releases/processing-0232-3.0a5.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0a5-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0232-3.0a5/processing-3.0a5-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0232-3.0a5/processing-3.0a5-linux32.tgz", + "size": 87553080 } }, { "node": { "name": "processing-3.0a5-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0232-3.0a5/processing-3.0a5-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0232-3.0a5/processing-3.0a5-linux64.tgz", + "size": 85839167 } }, { "node": { "name": "processing-3.0a5-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0232-3.0a5/processing-3.0a5-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0232-3.0a5/processing-3.0a5-windows64.zip", + "size": 88558157 } }, { "node": { "name": "processing-3.0a5-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0232-3.0a5/processing-3.0a5-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0232-3.0a5/processing-3.0a5-windows32.zip", + "size": 87816552 } }, { "node": { "name": "processing-3.0a5-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0232-3.0a5/processing-3.0a5-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0232-3.0a5/processing-3.0a5-macosx.zip", + "size": 91104902 } } ] diff --git a/content/download/releases/processing-0233-3.0a6.json b/content/download/releases/processing-0233-3.0a6.json index be6020f70..677878965 100644 --- a/content/download/releases/processing-0233-3.0a6.json +++ b/content/download/releases/processing-0233-3.0a6.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0a6-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0233-3.0a6/processing-3.0a6-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0233-3.0a6/processing-3.0a6-windows32.zip", + "size": 102585683 } }, { "node": { "name": "processing-3.0a6-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0233-3.0a6/processing-3.0a6-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0233-3.0a6/processing-3.0a6-linux64.tgz", + "size": 101441483 } }, { "node": { "name": "processing-3.0a6-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0233-3.0a6/processing-3.0a6-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0233-3.0a6/processing-3.0a6-linux32.tgz", + "size": 103533051 } }, { "node": { "name": "processing-3.0a6-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0233-3.0a6/processing-3.0a6-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0233-3.0a6/processing-3.0a6-windows64.zip", + "size": 104467711 } }, { "node": { "name": "processing-3.0a6-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0233-3.0a6/processing-3.0a6-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0233-3.0a6/processing-3.0a6-macosx.zip", + "size": 101260078 } } ] diff --git a/content/download/releases/processing-0234-3.0a7.json b/content/download/releases/processing-0234-3.0a7.json index 52a602063..73643256e 100644 --- a/content/download/releases/processing-0234-3.0a7.json +++ b/content/download/releases/processing-0234-3.0a7.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0a7-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0234-3.0a7/processing-3.0a7-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0234-3.0a7/processing-3.0a7-macosx.zip", + "size": 101260835 } }, { "node": { "name": "processing-3.0a7-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0234-3.0a7/processing-3.0a7-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0234-3.0a7/processing-3.0a7-windows32.zip", + "size": 102586531 } }, { "node": { "name": "processing-3.0a7-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0234-3.0a7/processing-3.0a7-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0234-3.0a7/processing-3.0a7-windows64.zip", + "size": 104468516 } }, { "node": { "name": "processing-3.0a7-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0234-3.0a7/processing-3.0a7-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0234-3.0a7/processing-3.0a7-linux32.tgz", + "size": 103535270 } }, { "node": { "name": "processing-3.0a7-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0234-3.0a7/processing-3.0a7-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0234-3.0a7/processing-3.0a7-linux64.tgz", + "size": 101445641 } } ] diff --git a/content/download/releases/processing-0235-3.0a8.json b/content/download/releases/processing-0235-3.0a8.json index 309e97990..24e8563a6 100644 --- a/content/download/releases/processing-0235-3.0a8.json +++ b/content/download/releases/processing-0235-3.0a8.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0a8-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0235-3.0a8/processing-3.0a8-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0235-3.0a8/processing-3.0a8-macosx.zip", + "size": 114486619 } }, { "node": { "name": "processing-3.0a8-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0235-3.0a8/processing-3.0a8-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0235-3.0a8/processing-3.0a8-windows32.zip", + "size": 113038389 } }, { "node": { "name": "processing-3.0a8-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0235-3.0a8/processing-3.0a8-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0235-3.0a8/processing-3.0a8-linux32.tgz", + "size": 119348176 } }, { "node": { "name": "processing-3.0a8-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0235-3.0a8/processing-3.0a8-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0235-3.0a8/processing-3.0a8-windows64.zip", + "size": 116190565 } }, { "node": { "name": "processing-3.0a8-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0235-3.0a8/processing-3.0a8-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0235-3.0a8/processing-3.0a8-linux64.tgz", + "size": 117517630 } } ] diff --git a/content/download/releases/processing-0236-3.0a9.json b/content/download/releases/processing-0236-3.0a9.json index d2c31e8c2..9019d570d 100644 --- a/content/download/releases/processing-0236-3.0a9.json +++ b/content/download/releases/processing-0236-3.0a9.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0a9-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0236-3.0a9/processing-3.0a9-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0236-3.0a9/processing-3.0a9-linux64.tgz", + "size": 117306418 } }, { "node": { "name": "processing-3.0a9-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0236-3.0a9/processing-3.0a9-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0236-3.0a9/processing-3.0a9-windows64.zip", + "size": 115862505 } }, { "node": { "name": "processing-3.0a9-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0236-3.0a9/processing-3.0a9-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0236-3.0a9/processing-3.0a9-macosx.zip", + "size": 114200917 } }, { "node": { "name": "processing-3.0a9-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0236-3.0a9/processing-3.0a9-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0236-3.0a9/processing-3.0a9-windows32.zip", + "size": 112710064 } }, { "node": { "name": "processing-3.0a9-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0236-3.0a9/processing-3.0a9-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0236-3.0a9/processing-3.0a9-linux32.tgz", + "size": 119058705 } } ] diff --git a/content/download/releases/processing-0237-3.0a10.json b/content/download/releases/processing-0237-3.0a10.json index af1894a51..9f62efef2 100644 --- a/content/download/releases/processing-0237-3.0a10.json +++ b/content/download/releases/processing-0237-3.0a10.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0a10-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0237-3.0a10/processing-3.0a10-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0237-3.0a10/processing-3.0a10-macosx.zip", + "size": 115884597 } }, { "node": { "name": "processing-3.0a10-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0237-3.0a10/processing-3.0a10-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0237-3.0a10/processing-3.0a10-windows32.zip", + "size": 113513478 } }, { "node": { "name": "processing-3.0a10-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0237-3.0a10/processing-3.0a10-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0237-3.0a10/processing-3.0a10-windows64.zip", + "size": 116666017 } }, { "node": { "name": "processing-3.0a10-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0237-3.0a10/processing-3.0a10-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0237-3.0a10/processing-3.0a10-linux32.tgz", + "size": 119949384 } }, { "node": { "name": "processing-3.0a10-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0237-3.0a10/processing-3.0a10-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0237-3.0a10/processing-3.0a10-linux64.tgz", + "size": 118127854 } } ] diff --git a/content/download/releases/processing-0238-3.0a11.json b/content/download/releases/processing-0238-3.0a11.json index 1cad42e84..8ad86acce 100644 --- a/content/download/releases/processing-0238-3.0a11.json +++ b/content/download/releases/processing-0238-3.0a11.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0a11-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0238-3.0a11/processing-3.0a11-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0238-3.0a11/processing-3.0a11-macosx.zip", + "size": 115715082 } }, { "node": { "name": "processing-3.0a11-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0238-3.0a11/processing-3.0a11-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0238-3.0a11/processing-3.0a11-linux32.tgz", + "size": 120450178 } }, { "node": { "name": "processing-3.0a11-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0238-3.0a11/processing-3.0a11-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0238-3.0a11/processing-3.0a11-linux64.tgz", + "size": 118594980 } }, { "node": { "name": "processing-3.0a11-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0238-3.0a11/processing-3.0a11-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0238-3.0a11/processing-3.0a11-windows32.zip", + "size": 114015179 } }, { "node": { "name": "processing-3.0a11-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0238-3.0a11/processing-3.0a11-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0238-3.0a11/processing-3.0a11-windows64.zip", + "size": 117165068 } } ] diff --git a/content/download/releases/processing-0239-3.0b1.json b/content/download/releases/processing-0239-3.0b1.json index f9f47337e..a2fdc7a6c 100644 --- a/content/download/releases/processing-0239-3.0b1.json +++ b/content/download/releases/processing-0239-3.0b1.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0b1-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0239-3.0b1/processing-3.0b1-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0239-3.0b1/processing-3.0b1-macosx.zip", + "size": 114580985 } }, { "node": { "name": "processing-3.0b1-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0239-3.0b1/processing-3.0b1-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0239-3.0b1/processing-3.0b1-windows32.zip", + "size": 111300114 } }, { "node": { "name": "processing-3.0b1-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0239-3.0b1/processing-3.0b1-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0239-3.0b1/processing-3.0b1-windows64.zip", + "size": 114920658 } }, { "node": { "name": "processing-3.0b1-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0239-3.0b1/processing-3.0b1-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0239-3.0b1/processing-3.0b1-linux64.tgz", + "size": 116395037 } }, { "node": { "name": "processing-3.0b1-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0239-3.0b1/processing-3.0b1-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0239-3.0b1/processing-3.0b1-linux32.tgz", + "size": 118198422 } } ] diff --git a/content/download/releases/processing-0240-3.0b2.json b/content/download/releases/processing-0240-3.0b2.json index 269f94e61..66ed9e956 100644 --- a/content/download/releases/processing-0240-3.0b2.json +++ b/content/download/releases/processing-0240-3.0b2.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0b2-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0240-3.0b2/processing-3.0b2-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0240-3.0b2/processing-3.0b2-windows32.zip", + "size": 111761736 } }, { "node": { "name": "processing-3.0b2-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0240-3.0b2/processing-3.0b2-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0240-3.0b2/processing-3.0b2-macosx.zip", + "size": 113203500 } }, { "node": { "name": "processing-3.0b2-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0240-3.0b2/processing-3.0b2-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0240-3.0b2/processing-3.0b2-windows64.zip", + "size": 114911636 } }, { "node": { "name": "processing-3.0b2-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0240-3.0b2/processing-3.0b2-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0240-3.0b2/processing-3.0b2-linux32.tgz", + "size": 118194663 } }, { "node": { "name": "processing-3.0b2-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0240-3.0b2/processing-3.0b2-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0240-3.0b2/processing-3.0b2-linux64.tgz", + "size": 116351000 } } ] diff --git a/content/download/releases/processing-0241-3.0b3.json b/content/download/releases/processing-0241-3.0b3.json index b8ecab846..c048f1743 100644 --- a/content/download/releases/processing-0241-3.0b3.json +++ b/content/download/releases/processing-0241-3.0b3.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0b3-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0241-3.0b3/processing-3.0b3-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0241-3.0b3/processing-3.0b3-macosx.zip", + "size": 114527122 } }, { "node": { "name": "processing-3.0b3-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0241-3.0b3/processing-3.0b3-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0241-3.0b3/processing-3.0b3-windows32.zip", + "size": 111312497 } }, { "node": { "name": "processing-3.0b3-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0241-3.0b3/processing-3.0b3-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0241-3.0b3/processing-3.0b3-linux32.tgz", + "size": 118206638 } }, { "node": { "name": "processing-3.0b3-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0241-3.0b3/processing-3.0b3-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0241-3.0b3/processing-3.0b3-windows64.zip", + "size": 114933931 } }, { "node": { "name": "processing-3.0b3-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0241-3.0b3/processing-3.0b3-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0241-3.0b3/processing-3.0b3-linux64.tgz", + "size": 116393819 } } ] diff --git a/content/download/releases/processing-0242-3.0b4.json b/content/download/releases/processing-0242-3.0b4.json index 6ee953369..0822257ce 100644 --- a/content/download/releases/processing-0242-3.0b4.json +++ b/content/download/releases/processing-0242-3.0b4.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0b4-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0242-3.0b4/processing-3.0b4-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0242-3.0b4/processing-3.0b4-linux64.tgz", + "size": 116422550 } }, { "node": { "name": "processing-3.0b4-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0242-3.0b4/processing-3.0b4-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0242-3.0b4/processing-3.0b4-linux32.tgz", + "size": 118231159 } }, { "node": { "name": "processing-3.0b4-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0242-3.0b4/processing-3.0b4-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0242-3.0b4/processing-3.0b4-macosx.zip", + "size": 114513126 } }, { "node": { "name": "processing-3.0b4-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0242-3.0b4/processing-3.0b4-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0242-3.0b4/processing-3.0b4-windows64.zip", + "size": 114959587 } }, { "node": { "name": "processing-3.0b4-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0242-3.0b4/processing-3.0b4-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0242-3.0b4/processing-3.0b4-windows32.zip", + "size": 111793049 } } ] diff --git a/content/download/releases/processing-0243-3.0b5.json b/content/download/releases/processing-0243-3.0b5.json index 7a49d4336..bf3780747 100644 --- a/content/download/releases/processing-0243-3.0b5.json +++ b/content/download/releases/processing-0243-3.0b5.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0b5-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0243-3.0b5/processing-3.0b5-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0243-3.0b5/processing-3.0b5-windows32.zip", + "size": 118760405 } }, { "node": { "name": "processing-3.0b5-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0243-3.0b5/processing-3.0b5-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0243-3.0b5/processing-3.0b5-macosx.zip", + "size": 116949793 } }, { "node": { "name": "processing-3.0b5-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0243-3.0b5/processing-3.0b5-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0243-3.0b5/processing-3.0b5-windows64.zip", + "size": 122240323 } }, { "node": { "name": "processing-3.0b5-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0243-3.0b5/processing-3.0b5-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0243-3.0b5/processing-3.0b5-linux32.tgz", + "size": 126407041 } }, { "node": { "name": "processing-3.0b5-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0243-3.0b5/processing-3.0b5-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0243-3.0b5/processing-3.0b5-linux64.tgz", + "size": 124281767 } } ] diff --git a/content/download/releases/processing-0244-3.0b6.json b/content/download/releases/processing-0244-3.0b6.json index 2aa28b7c2..959002b87 100644 --- a/content/download/releases/processing-0244-3.0b6.json +++ b/content/download/releases/processing-0244-3.0b6.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0b6-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0244-3.0b6/processing-3.0b6-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0244-3.0b6/processing-3.0b6-macosx.zip", + "size": 116983628 } }, { "node": { "name": "processing-3.0b6-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0244-3.0b6/processing-3.0b6-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0244-3.0b6/processing-3.0b6-linux32.tgz", + "size": 126420820 } }, { "node": { "name": "processing-3.0b6-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0244-3.0b6/processing-3.0b6-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0244-3.0b6/processing-3.0b6-linux64.tgz", + "size": 124306141 } }, { "node": { "name": "processing-3.0b6-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0244-3.0b6/processing-3.0b6-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0244-3.0b6/processing-3.0b6-windows64.zip", + "size": 121221220 } }, { "node": { "name": "processing-3.0b6-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0244-3.0b6/processing-3.0b6-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0244-3.0b6/processing-3.0b6-windows32.zip", + "size": 118778064 } } ] diff --git a/content/download/releases/processing-0245-3.0b7.json b/content/download/releases/processing-0245-3.0b7.json index 2d2735f7a..c4a6a83ea 100644 --- a/content/download/releases/processing-0245-3.0b7.json +++ b/content/download/releases/processing-0245-3.0b7.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0b7-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0245-3.0b7/processing-3.0b7-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0245-3.0b7/processing-3.0b7-windows32.zip", + "size": 112729857 } }, { "node": { "name": "processing-3.0b7-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0245-3.0b7/processing-3.0b7-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0245-3.0b7/processing-3.0b7-macosx.zip", + "size": 114584843 } }, { "node": { "name": "processing-3.0b7-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0245-3.0b7/processing-3.0b7-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0245-3.0b7/processing-3.0b7-windows64.zip", + "size": 115776889 } }, { "node": { "name": "processing-3.0b7-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0245-3.0b7/processing-3.0b7-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0245-3.0b7/processing-3.0b7-linux32.tgz", + "size": 118291339 } }, { "node": { "name": "processing-3.0b7-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0245-3.0b7/processing-3.0b7-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0245-3.0b7/processing-3.0b7-linux64.tgz", + "size": 116489152 } } ] diff --git a/content/download/releases/processing-0246-3.0.json b/content/download/releases/processing-0246-3.0.json index 290d3c859..df4ea9b25 100644 --- a/content/download/releases/processing-0246-3.0.json +++ b/content/download/releases/processing-0246-3.0.json @@ -7,31 +7,36 @@ { "node": { "name": "processing-3.0-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0246-3.0/processing-3.0-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0246-3.0/processing-3.0-macosx.zip", + "size": 114943196 } }, { "node": { "name": "processing-3.0-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0246-3.0/processing-3.0-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0246-3.0/processing-3.0-windows64.zip", + "size": 116362858 } }, { "node": { "name": "processing-3.0-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0246-3.0/processing-3.0-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0246-3.0/processing-3.0-windows32.zip", + "size": 113315893 } }, { "node": { "name": "processing-3.0-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0246-3.0/processing-3.0-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0246-3.0/processing-3.0-linux32.tgz", + "size": 118811941 } }, { "node": { "name": "processing-3.0-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0246-3.0/processing-3.0-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0246-3.0/processing-3.0-linux64.tgz", + "size": 117006370 } } ] diff --git a/content/download/releases/processing-0247-3.0.1.json b/content/download/releases/processing-0247-3.0.1.json index 42f338860..0539ae675 100644 --- a/content/download/releases/processing-0247-3.0.1.json +++ b/content/download/releases/processing-0247-3.0.1.json @@ -7,43 +7,50 @@ { "node": { "name": "processing-3.0.1-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0247-3.0.1/processing-3.0.1-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0247-3.0.1/processing-3.0.1-windows32.zip", + "size": 113587095 } }, { "node": { "name": "processing-3.0.1-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0247-3.0.1/processing-3.0.1-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0247-3.0.1/processing-3.0.1-macosx.zip", + "size": 109428873 } }, { "node": { "name": "processing-3.0.1-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0247-3.0.1/processing-3.0.1-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0247-3.0.1/processing-3.0.1-linux32.tgz", + "size": 119018069 } }, { "node": { "name": "processing-3.0.1-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0247-3.0.1/processing-3.0.1-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0247-3.0.1/processing-3.0.1-linux64.tgz", + "size": 117178371 } }, { "node": { "name": "processing-3.0.1-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0247-3.0.1/processing-3.0.1-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0247-3.0.1/processing-3.0.1-windows64.zip", + "size": 115715619 } }, { "node": { "name": "processing-3.0.1-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0247-3.0.1/processing-3.0.1-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0247-3.0.1/processing-3.0.1-linux-armv6hf.tgz", + "size": 92102462 } }, { "node": { "name": "processing-3.0.1-linux-raspbian.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0247-3.0.1/processing-3.0.1-linux-raspbian.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0247-3.0.1/processing-3.0.1-linux-raspbian.zip", + "size": 1420431741 } } ] diff --git a/content/download/releases/processing-0248-3.0.2.json b/content/download/releases/processing-0248-3.0.2.json index 4c2a69428..42416d05e 100644 --- a/content/download/releases/processing-0248-3.0.2.json +++ b/content/download/releases/processing-0248-3.0.2.json @@ -7,43 +7,50 @@ { "node": { "name": "processing-3.0.2-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0248-3.0.2/processing-3.0.2-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0248-3.0.2/processing-3.0.2-linux32.tgz", + "size": 123043678 } }, { "node": { "name": "processing-3.0.2-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0248-3.0.2/processing-3.0.2-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0248-3.0.2/processing-3.0.2-macosx.zip", + "size": 114775468 } }, { "node": { "name": "processing-3.0.2-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0248-3.0.2/processing-3.0.2-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0248-3.0.2/processing-3.0.2-linux64.tgz", + "size": 120878901 } }, { "node": { "name": "processing-3.0.2-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0248-3.0.2/processing-3.0.2-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0248-3.0.2/processing-3.0.2-windows64.zip", + "size": 119146458 } }, { "node": { "name": "processing-3.0.2-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0248-3.0.2/processing-3.0.2-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0248-3.0.2/processing-3.0.2-windows32.zip", + "size": 115698790 } }, { "node": { "name": "processing-3.0.2-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0248-3.0.2/processing-3.0.2-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0248-3.0.2/processing-3.0.2-linux-armv6hf.tgz", + "size": 93383144 } }, { "node": { "name": "processing-3.0.2-linux-raspbian.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0248-3.0.2/processing-3.0.2-linux-raspbian.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0248-3.0.2/processing-3.0.2-linux-raspbian.zip", + "size": 1517169700 } } ] diff --git a/content/download/releases/processing-0249-3.1.json b/content/download/releases/processing-0249-3.1.json index af619f4fe..a79e6fa07 100644 --- a/content/download/releases/processing-0249-3.1.json +++ b/content/download/releases/processing-0249-3.1.json @@ -7,43 +7,50 @@ { "node": { "name": "processing-3.1-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0249-3.1/processing-3.1-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0249-3.1/processing-3.1-linux32.tgz", + "size": 124783499 } }, { "node": { "name": "processing-3.1-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0249-3.1/processing-3.1-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0249-3.1/processing-3.1-macosx.zip", + "size": 116576247 } }, { "node": { "name": "processing-3.1-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0249-3.1/processing-3.1-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0249-3.1/processing-3.1-windows32.zip", + "size": 117358407 } }, { "node": { "name": "processing-3.1-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0249-3.1/processing-3.1-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0249-3.1/processing-3.1-windows64.zip", + "size": 120839039 } }, { "node": { "name": "processing-3.1-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0249-3.1/processing-3.1-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0249-3.1/processing-3.1-linux64.tgz", + "size": 122591967 } }, { "node": { "name": "processing-3.1-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0249-3.1/processing-3.1-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0249-3.1/processing-3.1-linux-armv6hf.tgz", + "size": 95058197 } }, { "node": { "name": "processing-3.1-linux-raspbian.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0249-3.1/processing-3.1-linux-raspbian.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0249-3.1/processing-3.1-linux-raspbian.zip", + "size": 1660817204 } } ] diff --git a/content/download/releases/processing-0250-3.1.1.json b/content/download/releases/processing-0250-3.1.1.json index 0625bfe94..4bf0e57de 100644 --- a/content/download/releases/processing-0250-3.1.1.json +++ b/content/download/releases/processing-0250-3.1.1.json @@ -7,43 +7,50 @@ { "node": { "name": "processing-3.1.1-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0250-3.1.1/processing-3.1.1-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0250-3.1.1/processing-3.1.1-windows32.zip", + "size": 117379776 } }, { "node": { "name": "processing-3.1.1-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0250-3.1.1/processing-3.1.1-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0250-3.1.1/processing-3.1.1-macosx.zip", + "size": 116587382 } }, { "node": { "name": "processing-3.1.1-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0250-3.1.1/processing-3.1.1-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0250-3.1.1/processing-3.1.1-linux32.tgz", + "size": 124769200 } }, { "node": { "name": "processing-3.1.1-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0250-3.1.1/processing-3.1.1-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0250-3.1.1/processing-3.1.1-linux64.tgz", + "size": 122603060 } }, { "node": { "name": "processing-3.1.1-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0250-3.1.1/processing-3.1.1-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0250-3.1.1/processing-3.1.1-windows64.zip", + "size": 120861372 } }, { "node": { "name": "processing-3.1.1-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0250-3.1.1/processing-3.1.1-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0250-3.1.1/processing-3.1.1-linux-armv6hf.tgz", + "size": 98998573 } }, { "node": { "name": "processing-3.1.1-linux-raspbian.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0250-3.1.1/processing-3.1.1-linux-raspbian.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0250-3.1.1/processing-3.1.1-linux-raspbian.zip", + "size": 1705594333 } } ] diff --git a/content/download/releases/processing-0251-3.1.2.json b/content/download/releases/processing-0251-3.1.2.json index 7b561f877..bb28161ce 100644 --- a/content/download/releases/processing-0251-3.1.2.json +++ b/content/download/releases/processing-0251-3.1.2.json @@ -7,43 +7,50 @@ { "node": { "name": "processing-3.1.2-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0251-3.1.2/processing-3.1.2-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0251-3.1.2/processing-3.1.2-windows64.zip", + "size": 120778486 } }, { "node": { "name": "processing-3.1.2-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0251-3.1.2/processing-3.1.2-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0251-3.1.2/processing-3.1.2-macosx.zip", + "size": 116510118 } }, { "node": { "name": "processing-3.1.2-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0251-3.1.2/processing-3.1.2-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0251-3.1.2/processing-3.1.2-windows32.zip", + "size": 117296097 } }, { "node": { "name": "processing-3.1.2-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0251-3.1.2/processing-3.1.2-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0251-3.1.2/processing-3.1.2-linux32.tgz", + "size": 124770833 } }, { "node": { "name": "processing-3.1.2-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0251-3.1.2/processing-3.1.2-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0251-3.1.2/processing-3.1.2-linux64.tgz", + "size": 122563514 } }, { "node": { "name": "processing-3.1.2-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0251-3.1.2/processing-3.1.2-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0251-3.1.2/processing-3.1.2-linux-armv6hf.tgz", + "size": 95036871 } }, { "node": { "name": "processing-3.1.2-linux-raspbian.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0251-3.1.2/processing-3.1.2-linux-raspbian.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0251-3.1.2/processing-3.1.2-linux-raspbian.zip", + "size": 1622109050 } } ] diff --git a/content/download/releases/processing-0252-3.2.json b/content/download/releases/processing-0252-3.2.json index b7507e0c5..bbd1c3961 100644 --- a/content/download/releases/processing-0252-3.2.json +++ b/content/download/releases/processing-0252-3.2.json @@ -7,43 +7,50 @@ { "node": { "name": "processing-3.2-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0252-3.2/processing-3.2-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0252-3.2/processing-3.2-windows64.zip", + "size": 120762627 } }, { "node": { "name": "processing-3.2-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0252-3.2/processing-3.2-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0252-3.2/processing-3.2-windows32.zip", + "size": 117280457 } }, { "node": { "name": "processing-3.2-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0252-3.2/processing-3.2-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0252-3.2/processing-3.2-macosx.zip", + "size": 116505216 } }, { "node": { "name": "processing-3.2-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0252-3.2/processing-3.2-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0252-3.2/processing-3.2-linux64.tgz", + "size": 122550248 } }, { "node": { "name": "processing-3.2-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0252-3.2/processing-3.2-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0252-3.2/processing-3.2-linux32.tgz", + "size": 124760526 } }, { "node": { "name": "processing-3.2-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0252-3.2/processing-3.2-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0252-3.2/processing-3.2-linux-armv6hf.tgz", + "size": 95015507 } }, { "node": { "name": "processing-3.2-linux-raspbian.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0252-3.2/processing-3.2-linux-raspbian.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0252-3.2/processing-3.2-linux-raspbian.zip", + "size": 1567480220 } } ] diff --git a/content/download/releases/processing-0253-3.2.1.json b/content/download/releases/processing-0253-3.2.1.json index c138a6c91..446c7af2b 100644 --- a/content/download/releases/processing-0253-3.2.1.json +++ b/content/download/releases/processing-0253-3.2.1.json @@ -7,37 +7,43 @@ { "node": { "name": "processing-3.2.1-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0253-3.2.1/processing-3.2.1-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0253-3.2.1/processing-3.2.1-linux64.tgz", + "size": 122556723 } }, { "node": { "name": "processing-3.2.1-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0253-3.2.1/processing-3.2.1-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0253-3.2.1/processing-3.2.1-macosx.zip", + "size": 115077505 } }, { "node": { "name": "processing-3.2.1-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0253-3.2.1/processing-3.2.1-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0253-3.2.1/processing-3.2.1-linux32.tgz", + "size": 124757150 } }, { "node": { "name": "processing-3.2.1-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0253-3.2.1/processing-3.2.1-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0253-3.2.1/processing-3.2.1-windows32.zip", + "size": 117294937 } }, { "node": { "name": "processing-3.2.1-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0253-3.2.1/processing-3.2.1-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0253-3.2.1/processing-3.2.1-windows64.zip", + "size": 120688864 } }, { "node": { "name": "processing-3.2.1-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0253-3.2.1/processing-3.2.1-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0253-3.2.1/processing-3.2.1-linux-armv6hf.tgz", + "size": 95019824 } } ] diff --git a/content/download/releases/processing-0254-3.2.2.json b/content/download/releases/processing-0254-3.2.2.json index de5fe823f..7e775c869 100644 --- a/content/download/releases/processing-0254-3.2.2.json +++ b/content/download/releases/processing-0254-3.2.2.json @@ -7,37 +7,43 @@ { "node": { "name": "processing-3.2.2-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0254-3.2.2/processing-3.2.2-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0254-3.2.2/processing-3.2.2-macosx.zip", + "size": 116533598 } }, { "node": { "name": "processing-3.2.2-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0254-3.2.2/processing-3.2.2-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0254-3.2.2/processing-3.2.2-windows32.zip", + "size": 117321050 } }, { "node": { "name": "processing-3.2.2-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0254-3.2.2/processing-3.2.2-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0254-3.2.2/processing-3.2.2-linux64.tgz", + "size": 122574598 } }, { "node": { "name": "processing-3.2.2-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0254-3.2.2/processing-3.2.2-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0254-3.2.2/processing-3.2.2-linux32.tgz", + "size": 124780230 } }, { "node": { "name": "processing-3.2.2-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0254-3.2.2/processing-3.2.2-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0254-3.2.2/processing-3.2.2-windows64.zip", + "size": 120807960 } }, { "node": { "name": "processing-3.2.2-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0254-3.2.2/processing-3.2.2-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0254-3.2.2/processing-3.2.2-linux-armv6hf.tgz", + "size": 95042730 } } ] diff --git a/content/download/releases/processing-0255-3.2.3.json b/content/download/releases/processing-0255-3.2.3.json index 9efeeb71a..d04a97b2f 100644 --- a/content/download/releases/processing-0255-3.2.3.json +++ b/content/download/releases/processing-0255-3.2.3.json @@ -7,43 +7,50 @@ { "node": { "name": "processing-3.2.3-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0255-3.2.3/processing-3.2.3-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0255-3.2.3/processing-3.2.3-windows64.zip", + "size": 120807185 } }, { "node": { "name": "processing-3.2.3-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0255-3.2.3/processing-3.2.3-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0255-3.2.3/processing-3.2.3-linux32.tgz", + "size": 124771665 } }, { "node": { "name": "processing-3.2.3-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0255-3.2.3/processing-3.2.3-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0255-3.2.3/processing-3.2.3-windows32.zip", + "size": 117320443 } }, { "node": { "name": "processing-3.2.3-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0255-3.2.3/processing-3.2.3-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0255-3.2.3/processing-3.2.3-macosx.zip", + "size": 116533339 } }, { "node": { "name": "processing-3.2.3-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0255-3.2.3/processing-3.2.3-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0255-3.2.3/processing-3.2.3-linux64.tgz", + "size": 122577994 } }, { "node": { "name": "processing-3.2.3-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0255-3.2.3/processing-3.2.3-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0255-3.2.3/processing-3.2.3-linux-armv6hf.tgz", + "size": 95049981 } }, { "node": { "name": "processing-3.2.3-linux-raspbian.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0255-3.2.3/processing-3.2.3-linux-raspbian.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0255-3.2.3/processing-3.2.3-linux-raspbian.zip", + "size": 1717479580 } } ] diff --git a/content/download/releases/processing-0256-3.2.4.json b/content/download/releases/processing-0256-3.2.4.json index 719e55766..a67c4a23a 100644 --- a/content/download/releases/processing-0256-3.2.4.json +++ b/content/download/releases/processing-0256-3.2.4.json @@ -7,37 +7,43 @@ { "node": { "name": "processing-3.2.4-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0256-3.2.4/processing-3.2.4-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0256-3.2.4/processing-3.2.4-macosx.zip", + "size": 116558203 } }, { "node": { "name": "processing-3.2.4-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0256-3.2.4/processing-3.2.4-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0256-3.2.4/processing-3.2.4-windows64.zip", + "size": 120883996 } }, { "node": { "name": "processing-3.2.4-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0256-3.2.4/processing-3.2.4-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0256-3.2.4/processing-3.2.4-windows32.zip", + "size": 117336805 } }, { "node": { "name": "processing-3.2.4-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0256-3.2.4/processing-3.2.4-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0256-3.2.4/processing-3.2.4-linux32.tgz", + "size": 124774284 } }, { "node": { "name": "processing-3.2.4-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0256-3.2.4/processing-3.2.4-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0256-3.2.4/processing-3.2.4-linux64.tgz", + "size": 122557616 } }, { "node": { "name": "processing-3.2.4-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0256-3.2.4/processing-3.2.4-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0256-3.2.4/processing-3.2.4-linux-armv6hf.tgz", + "size": 95056939 } } ] diff --git a/content/download/releases/processing-0257-3.3.json b/content/download/releases/processing-0257-3.3.json index ff7ca6bb9..6aa9fab9e 100644 --- a/content/download/releases/processing-0257-3.3.json +++ b/content/download/releases/processing-0257-3.3.json @@ -7,43 +7,50 @@ { "node": { "name": "processing-3.3-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0257-3.3/processing-3.3-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0257-3.3/processing-3.3-windows32.zip", + "size": 117330690 } }, { "node": { "name": "processing-3.3-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0257-3.3/processing-3.3-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0257-3.3/processing-3.3-windows64.zip", + "size": 120877891 } }, { "node": { "name": "processing-3.3-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0257-3.3/processing-3.3-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0257-3.3/processing-3.3-macosx.zip", + "size": 116564864 } }, { "node": { "name": "processing-3.3-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0257-3.3/processing-3.3-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0257-3.3/processing-3.3-linux64.tgz", + "size": 122565364 } }, { "node": { "name": "processing-3.3-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0257-3.3/processing-3.3-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0257-3.3/processing-3.3-linux32.tgz", + "size": 124782500 } }, { "node": { "name": "processing-3.3-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0257-3.3/processing-3.3-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0257-3.3/processing-3.3-linux-armv6hf.tgz", + "size": 95060631 } }, { "node": { "name": "processing-3.3-linux-raspbian.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0257-3.3/processing-3.3-linux-raspbian.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0257-3.3/processing-3.3-linux-raspbian.zip", + "size": 1793287099 } } ] diff --git a/content/download/releases/processing-0258-3.3.1.json b/content/download/releases/processing-0258-3.3.1.json index 548c24919..b4c697b86 100644 --- a/content/download/releases/processing-0258-3.3.1.json +++ b/content/download/releases/processing-0258-3.3.1.json @@ -7,49 +7,57 @@ { "node": { "name": "processing-3.3.1-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0258-3.3.1/processing-3.3.1-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0258-3.3.1/processing-3.3.1-macosx.zip", + "size": 115585668 } }, { "node": { "name": "processing-3.3.1-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0258-3.3.1/processing-3.3.1-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0258-3.3.1/processing-3.3.1-windows32.zip", + "size": 117649535 } }, { "node": { "name": "processing-3.3.1-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0258-3.3.1/processing-3.3.1-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0258-3.3.1/processing-3.3.1-windows64.zip", + "size": 121654043 } }, { "node": { "name": "processing-3.3.1-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0258-3.3.1/processing-3.3.1-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0258-3.3.1/processing-3.3.1-linux32.tgz", + "size": 124778472 } }, { "node": { "name": "processing-3.3.1-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0258-3.3.1/processing-3.3.1-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0258-3.3.1/processing-3.3.1-linux64.tgz", + "size": 126078331 } }, { "node": { "name": "processing-3.3.1-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0258-3.3.1/processing-3.3.1-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0258-3.3.1/processing-3.3.1-linux-armv6hf.tgz", + "size": 94592504 } }, { "node": { "name": "processing-3.3.1-linux-arm64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0258-3.3.1/processing-3.3.1-linux-arm64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0258-3.3.1/processing-3.3.1-linux-arm64.tgz", + "size": 91412500 } }, { "node": { "name": "processing-3.3.1-linux-raspbian.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0258-3.3.1/processing-3.3.1-linux-raspbian.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0258-3.3.1/processing-3.3.1-linux-raspbian.zip", + "size": 1712156889 } } ] diff --git a/content/download/releases/processing-0259-3.3.2.json b/content/download/releases/processing-0259-3.3.2.json index f6e82a0d2..04991e3be 100644 --- a/content/download/releases/processing-0259-3.3.2.json +++ b/content/download/releases/processing-0259-3.3.2.json @@ -7,49 +7,57 @@ { "node": { "name": "processing-3.3.2-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0259-3.3.2/processing-3.3.2-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0259-3.3.2/processing-3.3.2-linux32.tgz", + "size": 128830635 } }, { "node": { "name": "processing-3.3.2-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0259-3.3.2/processing-3.3.2-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0259-3.3.2/processing-3.3.2-linux64.tgz", + "size": 126080224 } }, { "node": { "name": "processing-3.3.2-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0259-3.3.2/processing-3.3.2-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0259-3.3.2/processing-3.3.2-windows32.zip", + "size": 117650576 } }, { "node": { "name": "processing-3.3.2-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0259-3.3.2/processing-3.3.2-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0259-3.3.2/processing-3.3.2-windows64.zip", + "size": 121655309 } }, { "node": { "name": "processing-3.3.2-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0259-3.3.2/processing-3.3.2-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0259-3.3.2/processing-3.3.2-macosx.zip", + "size": 115588089 } }, { "node": { "name": "processing-3.3.2-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0259-3.3.2/processing-3.3.2-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0259-3.3.2/processing-3.3.2-linux-armv6hf.tgz", + "size": 94595855 } }, { "node": { "name": "processing-3.3.2-linux-arm64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0259-3.3.2/processing-3.3.2-linux-arm64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0259-3.3.2/processing-3.3.2-linux-arm64.tgz", + "size": 91413413 } }, { "node": { "name": "processing-3.3.2-linux-raspbian.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0259-3.3.2/processing-3.3.2-linux-raspbian.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0259-3.3.2/processing-3.3.2-linux-raspbian.zip", + "size": 1712624344 } } ] diff --git a/content/download/releases/processing-0260-3.3.3.json b/content/download/releases/processing-0260-3.3.3.json index ea7db62e1..6c957abfb 100644 --- a/content/download/releases/processing-0260-3.3.3.json +++ b/content/download/releases/processing-0260-3.3.3.json @@ -7,49 +7,57 @@ { "node": { "name": "processing-3.3.3-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0260-3.3.3/processing-3.3.3-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0260-3.3.3/processing-3.3.3-macosx.zip", + "size": 115588463 } }, { "node": { "name": "processing-3.3.3-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0260-3.3.3/processing-3.3.3-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0260-3.3.3/processing-3.3.3-windows32.zip", + "size": 117651177 } }, { "node": { "name": "processing-3.3.3-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0260-3.3.3/processing-3.3.3-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0260-3.3.3/processing-3.3.3-windows64.zip", + "size": 121655651 } }, { "node": { "name": "processing-3.3.3-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0260-3.3.3/processing-3.3.3-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0260-3.3.3/processing-3.3.3-linux32.tgz", + "size": 128827033 } }, { "node": { "name": "processing-3.3.3-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0260-3.3.3/processing-3.3.3-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0260-3.3.3/processing-3.3.3-linux64.tgz", + "size": 126078567 } }, { "node": { "name": "processing-3.3.3-linux-arm64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0260-3.3.3/processing-3.3.3-linux-arm64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0260-3.3.3/processing-3.3.3-linux-arm64.tgz", + "size": 91414239 } }, { "node": { "name": "processing-3.3.3-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0260-3.3.3/processing-3.3.3-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0260-3.3.3/processing-3.3.3-linux-armv6hf.tgz", + "size": 94594390 } }, { "node": { "name": "processing-3.3.3-linux-raspbian.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0260-3.3.3/processing-3.3.3-linux-raspbian.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0260-3.3.3/processing-3.3.3-linux-raspbian.zip", + "size": 1712702409 } } ] diff --git a/content/download/releases/processing-0261-3.3.4.json b/content/download/releases/processing-0261-3.3.4.json index a33f3867c..6ca830c50 100644 --- a/content/download/releases/processing-0261-3.3.4.json +++ b/content/download/releases/processing-0261-3.3.4.json @@ -7,37 +7,43 @@ { "node": { "name": "processing-3.3.4-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0261-3.3.4/processing-3.3.4-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0261-3.3.4/processing-3.3.4-linux64.tgz", + "size": 81588455 } }, { "node": { "name": "processing-3.3.4-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0261-3.3.4/processing-3.3.4-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0261-3.3.4/processing-3.3.4-macosx.zip", + "size": 114176443 } }, { "node": { "name": "processing-3.3.4-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0261-3.3.4/processing-3.3.4-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0261-3.3.4/processing-3.3.4-windows64.zip", + "size": 121661745 } }, { "node": { "name": "processing-3.3.4-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0261-3.3.4/processing-3.3.4-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0261-3.3.4/processing-3.3.4-windows32.zip", + "size": 117657148 } }, { "node": { "name": "processing-3.3.4-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0261-3.3.4/processing-3.3.4-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0261-3.3.4/processing-3.3.4-linux32.tgz", + "size": 128839770 } }, { "node": { "name": "processing-3.3.4-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0261-3.3.4/processing-3.3.4-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0261-3.3.4/processing-3.3.4-linux-armv6hf.tgz", + "size": 94603880 } } ] diff --git a/content/download/releases/processing-0262-3.3.5.json b/content/download/releases/processing-0262-3.3.5.json index e194ee1b1..2e46dd50f 100644 --- a/content/download/releases/processing-0262-3.3.5.json +++ b/content/download/releases/processing-0262-3.3.5.json @@ -7,49 +7,57 @@ { "node": { "name": "processing-3.3.5-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0262-3.3.5/processing-3.3.5-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0262-3.3.5/processing-3.3.5-windows32.zip", + "size": 117656995 } }, { "node": { "name": "processing-3.3.5-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0262-3.3.5/processing-3.3.5-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0262-3.3.5/processing-3.3.5-linux64.tgz", + "size": 126094700 } }, { "node": { "name": "processing-3.3.5-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0262-3.3.5/processing-3.3.5-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0262-3.3.5/processing-3.3.5-macosx.zip", + "size": 114176581 } }, { "node": { "name": "processing-3.3.5-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0262-3.3.5/processing-3.3.5-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0262-3.3.5/processing-3.3.5-windows64.zip", + "size": 121661762 } }, { "node": { "name": "processing-3.3.5-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0262-3.3.5/processing-3.3.5-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0262-3.3.5/processing-3.3.5-linux32.tgz", + "size": 128840111 } }, { "node": { "name": "processing-3.3.5-linux-armv6hf.tar.gz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0262-3.3.5/processing-3.3.5-linux-armv6hf.tar.gz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0262-3.3.5/processing-3.3.5-linux-armv6hf.tar.gz", + "size": 94154911 } }, { "node": { "name": "processing-3.3.5-linux-raspbian.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0262-3.3.5/processing-3.3.5-linux-raspbian.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0262-3.3.5/processing-3.3.5-linux-raspbian.zip", + "size": 1934879423 } }, { "node": { "name": "processing-3.3.5-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0262-3.3.5/processing-3.3.5-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0262-3.3.5/processing-3.3.5-linux-armv6hf.tgz", + "size": 94154911 } } ] diff --git a/content/download/releases/processing-0263-3.3.6.json b/content/download/releases/processing-0263-3.3.6.json index 746353209..a2aefa786 100644 --- a/content/download/releases/processing-0263-3.3.6.json +++ b/content/download/releases/processing-0263-3.3.6.json @@ -7,37 +7,43 @@ { "node": { "name": "processing-3.3.6-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0263-3.3.6/processing-3.3.6-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0263-3.3.6/processing-3.3.6-macosx.zip", + "size": 114208568 } }, { "node": { "name": "processing-3.3.6-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0263-3.3.6/processing-3.3.6-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0263-3.3.6/processing-3.3.6-windows64.zip", + "size": 121697125 } }, { "node": { "name": "processing-3.3.6-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0263-3.3.6/processing-3.3.6-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0263-3.3.6/processing-3.3.6-windows32.zip", + "size": 117684423 } }, { "node": { "name": "processing-3.3.6-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0263-3.3.6/processing-3.3.6-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0263-3.3.6/processing-3.3.6-linux64.tgz", + "size": 126104176 } }, { "node": { "name": "processing-3.3.6-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0263-3.3.6/processing-3.3.6-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0263-3.3.6/processing-3.3.6-linux32.tgz", + "size": 128888149 } }, { "node": { "name": "processing-3.3.6-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0263-3.3.6/processing-3.3.6-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0263-3.3.6/processing-3.3.6-linux-armv6hf.tgz", + "size": 94874576 } } ] diff --git a/content/download/releases/processing-0264-3.3.7.1.json b/content/download/releases/processing-0264-3.3.7.1.json index e4d4d6a1f..7f4653fea 100644 --- a/content/download/releases/processing-0264-3.3.7.1.json +++ b/content/download/releases/processing-0264-3.3.7.1.json @@ -7,13 +7,15 @@ { "node": { "name": "processing-3.3.7.1-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7.1/processing-3.3.7.1-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7.1/processing-3.3.7.1-linux-armv6hf.tgz", + "size": 100179776 } }, { "node": { "name": "processing-3.3.7.1-linux-raspbian.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7.1/processing-3.3.7.1-linux-raspbian.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7.1/processing-3.3.7.1-linux-raspbian.zip", + "size": 1957236342 } } ] diff --git a/content/download/releases/processing-0264-3.3.7.2.json b/content/download/releases/processing-0264-3.3.7.2.json index f1c19d89f..b6e6e91b5 100644 --- a/content/download/releases/processing-0264-3.3.7.2.json +++ b/content/download/releases/processing-0264-3.3.7.2.json @@ -7,13 +7,15 @@ { "node": { "name": "processing-3.3.7.2-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7.2/processing-3.3.7.2-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7.2/processing-3.3.7.2-linux-armv6hf.tgz", + "size": 100158731 } }, { "node": { "name": "processing-3.3.7.2-linux-raspbian.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7.2/processing-3.3.7.2-linux-raspbian.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7.2/processing-3.3.7.2-linux-raspbian.zip", + "size": 1957844500 } } ] diff --git a/content/download/releases/processing-0264-3.3.7.json b/content/download/releases/processing-0264-3.3.7.json index 9852b644e..8d81f5c55 100644 --- a/content/download/releases/processing-0264-3.3.7.json +++ b/content/download/releases/processing-0264-3.3.7.json @@ -7,43 +7,50 @@ { "node": { "name": "processing-3.3.7-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7/processing-3.3.7-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7/processing-3.3.7-macosx.zip", + "size": 125124493 } }, { "node": { "name": "processing-3.3.7-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7/processing-3.3.7-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7/processing-3.3.7-windows64.zip", + "size": 126815801 } }, { "node": { "name": "processing-3.3.7-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7/processing-3.3.7-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7/processing-3.3.7-linux32.tgz", + "size": 133419298 } }, { "node": { "name": "processing-3.3.7-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7/processing-3.3.7-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7/processing-3.3.7-windows32.zip", + "size": 122588198 } }, { "node": { "name": "processing-3.3.7-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7/processing-3.3.7-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7/processing-3.3.7-linux64.tgz", + "size": 130292579 } }, { "node": { "name": "processing-3.3.7-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7/processing-3.3.7-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7/processing-3.3.7-linux-armv6hf.tgz", + "size": 94946351 } }, { "node": { "name": "processing-3.3.7-linux-raspbian.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7/processing-3.3.7-linux-raspbian.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0264-3.3.7/processing-3.3.7-linux-raspbian.zip", + "size": 1952663521 } } ] diff --git a/content/download/releases/processing-0265-3.4.json b/content/download/releases/processing-0265-3.4.json index b303c22b0..6d0f79237 100644 --- a/content/download/releases/processing-0265-3.4.json +++ b/content/download/releases/processing-0265-3.4.json @@ -7,43 +7,50 @@ { "node": { "name": "processing-3.4-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0265-3.4/processing-3.4-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0265-3.4/processing-3.4-macosx.zip", + "size": 126545838 } }, { "node": { "name": "processing-3.4-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0265-3.4/processing-3.4-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0265-3.4/processing-3.4-windows64.zip", + "size": 128265676 } }, { "node": { "name": "processing-3.4-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0265-3.4/processing-3.4-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0265-3.4/processing-3.4-linux32.tgz", + "size": 135617983 } }, { "node": { "name": "processing-3.4-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0265-3.4/processing-3.4-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0265-3.4/processing-3.4-linux64.tgz", + "size": 132458798 } }, { "node": { "name": "processing-3.4-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0265-3.4/processing-3.4-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0265-3.4/processing-3.4-windows32.zip", + "size": 123958510 } }, { "node": { "name": "processing-3.4-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0265-3.4/processing-3.4-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0265-3.4/processing-3.4-linux-armv6hf.tgz", + "size": 100380116 } }, { "node": { "name": "processing-3.4-linux-raspbian.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0265-3.4/processing-3.4-linux-raspbian.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0265-3.4/processing-3.4-linux-raspbian.zip", + "size": 1957579239 } } ] diff --git a/content/download/releases/processing-0266-3.5.json b/content/download/releases/processing-0266-3.5.json index 51ef9b898..3f98f897a 100644 --- a/content/download/releases/processing-0266-3.5.json +++ b/content/download/releases/processing-0266-3.5.json @@ -7,25 +7,29 @@ { "node": { "name": "processing-3.5-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0266-3.5/processing-3.5-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0266-3.5/processing-3.5-macosx.zip", + "size": 129893496 } }, { "node": { "name": "processing-3.5-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0266-3.5/processing-3.5-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0266-3.5/processing-3.5-windows64.zip", + "size": 132809014 } }, { "node": { "name": "processing-3.5-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0266-3.5/processing-3.5-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0266-3.5/processing-3.5-linux64.tgz", + "size": 138125893 } }, { "node": { "name": "processing-3.5-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0266-3.5/processing-3.5-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0266-3.5/processing-3.5-linux32.tgz", + "size": 141375648 } } ] diff --git a/content/download/releases/processing-0267-3.5.1.json b/content/download/releases/processing-0267-3.5.1.json index 6d397271c..55fcf5155 100644 --- a/content/download/releases/processing-0267-3.5.1.json +++ b/content/download/releases/processing-0267-3.5.1.json @@ -7,25 +7,29 @@ { "node": { "name": "processing-3.5.1-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0267-3.5.1/processing-3.5.1-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0267-3.5.1/processing-3.5.1-macosx.zip", + "size": 129891683 } }, { "node": { "name": "processing-3.5.1-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0267-3.5.1/processing-3.5.1-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0267-3.5.1/processing-3.5.1-linux64.tgz", + "size": 138121899 } }, { "node": { "name": "processing-3.5.1-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0267-3.5.1/processing-3.5.1-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0267-3.5.1/processing-3.5.1-windows64.zip", + "size": 132820228 } }, { "node": { "name": "processing-3.5.1-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0267-3.5.1/processing-3.5.1-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0267-3.5.1/processing-3.5.1-linux-armv6hf.tgz", + "size": 100149945 } } ] diff --git a/content/download/releases/processing-0268-3.5.2.json b/content/download/releases/processing-0268-3.5.2.json index f5297db67..0db5ca90b 100644 --- a/content/download/releases/processing-0268-3.5.2.json +++ b/content/download/releases/processing-0268-3.5.2.json @@ -7,37 +7,43 @@ { "node": { "name": "processing-3.5.2-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0268-3.5.2/processing-3.5.2-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0268-3.5.2/processing-3.5.2-linux64.tgz", + "size": 138122267 } }, { "node": { "name": "processing-3.5.2-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0268-3.5.2/processing-3.5.2-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0268-3.5.2/processing-3.5.2-macosx.zip", + "size": 129892704 } }, { "node": { "name": "processing-3.5.2-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0268-3.5.2/processing-3.5.2-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0268-3.5.2/processing-3.5.2-linux32.tgz", + "size": 141382904 } }, { "node": { "name": "processing-3.5.2-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0268-3.5.2/processing-3.5.2-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0268-3.5.2/processing-3.5.2-windows64.zip", + "size": 132821250 } }, { "node": { "name": "processing-3.5.2-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0268-3.5.2/processing-3.5.2-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0268-3.5.2/processing-3.5.2-windows32.zip", + "size": 127708589 } }, { "node": { "name": "processing-3.5.2-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0268-3.5.2/processing-3.5.2-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0268-3.5.2/processing-3.5.2-linux-armv6hf.tgz", + "size": 100108024 } } ] diff --git a/content/download/releases/processing-0269-3.5.3.json b/content/download/releases/processing-0269-3.5.3.json index cedbdd6de..d64215bf8 100644 --- a/content/download/releases/processing-0269-3.5.3.json +++ b/content/download/releases/processing-0269-3.5.3.json @@ -7,37 +7,43 @@ { "node": { "name": "processing-3.5.3-linux32.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0269-3.5.3/processing-3.5.3-linux32.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0269-3.5.3/processing-3.5.3-linux32.tgz", + "size": 141378957 } }, { "node": { "name": "processing-3.5.3-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0269-3.5.3/processing-3.5.3-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0269-3.5.3/processing-3.5.3-linux64.tgz", + "size": 138126131 } }, { "node": { "name": "processing-3.5.3-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0269-3.5.3/processing-3.5.3-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0269-3.5.3/processing-3.5.3-macosx.zip", + "size": 129906398 } }, { "node": { "name": "processing-3.5.3-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0269-3.5.3/processing-3.5.3-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0269-3.5.3/processing-3.5.3-windows32.zip", + "size": 127721490 } }, { "node": { "name": "processing-3.5.3-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0269-3.5.3/processing-3.5.3-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0269-3.5.3/processing-3.5.3-windows64.zip", + "size": 132834090 } }, { "node": { "name": "processing-3.5.3-linux-armv6hf.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0269-3.5.3/processing-3.5.3-linux-armv6hf.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0269-3.5.3/processing-3.5.3-linux-armv6hf.tgz", + "size": 100144409 } } ] diff --git a/content/download/releases/processing-0270-3.5.4.json b/content/download/releases/processing-0270-3.5.4.json index 8def1ef93..270dda031 100644 --- a/content/download/releases/processing-0270-3.5.4.json +++ b/content/download/releases/processing-0270-3.5.4.json @@ -7,25 +7,29 @@ { "node": { "name": "processing-3.5.4-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0270-3.5.4/processing-3.5.4-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0270-3.5.4/processing-3.5.4-macosx.zip", + "size": 130009427 } }, { "node": { "name": "processing-3.5.4-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0270-3.5.4/processing-3.5.4-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0270-3.5.4/processing-3.5.4-linux64.tgz", + "size": 138144543 } }, { "node": { "name": "processing-3.5.4-windows64.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0270-3.5.4/processing-3.5.4-windows64.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0270-3.5.4/processing-3.5.4-windows64.zip", + "size": 132952672 } }, { "node": { "name": "processing-3.5.4-windows32.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0270-3.5.4/processing-3.5.4-windows32.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-0270-3.5.4/processing-3.5.4-windows32.zip", + "size": 127839898 } } ] diff --git a/content/download/releases/processing-1.5.1.json b/content/download/releases/processing-1.5.1.json index 39bf0a149..7b662b037 100644 --- a/content/download/releases/processing-1.5.1.json +++ b/content/download/releases/processing-1.5.1.json @@ -7,25 +7,29 @@ { "node": { "name": "processing-1.5.1-windows.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-1.5.1/processing-1.5.1-windows.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-1.5.1/processing-1.5.1-windows.zip", + "size": 89941206 } }, { "node": { "name": "processing-1.5.1-windows-expert.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-1.5.1/processing-1.5.1-windows-expert.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-1.5.1/processing-1.5.1-windows-expert.zip", + "size": 48482241 } }, { "node": { "name": "processing-1.5.1-macosx.zip", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-1.5.1/processing-1.5.1-macosx.zip" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-1.5.1/processing-1.5.1-macosx.zip", + "size": 50518643 } }, { "node": { "name": "processing-1.5.1-linux.tgz", - "downloadUrl": "https://github.com/processing/processing/releases/download/processing-1.5.1/processing-1.5.1-linux.tgz" + "downloadUrl": "https://github.com/processing/processing/releases/download/processing-1.5.1/processing-1.5.1-linux.tgz", + "size": 91230153 } } ] diff --git a/content/download/releases/processing-1270-4.0a1.json b/content/download/releases/processing-1270-4.0a1.json index 09bc5db3d..3b758c9f9 100644 --- a/content/download/releases/processing-1270-4.0a1.json +++ b/content/download/releases/processing-1270-4.0a1.json @@ -1,25 +1,29 @@ { "name": "Processing 4.0 alpha 1", "tagName": "processing-1270-4.0a1", - "publishedAt": "2020-01-19T02:46:19Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:43:11Z", "releaseAssets": { "edges": [ { "node": { "name": "processing-4.0a1-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1270-4.0a1/processing-4.0a1-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1270-4.0a1/processing-4.0a1-linux64.tgz", + "size": 208835303 } }, { "node": { "name": "processing-4.0a1-macosx.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1270-4.0a1/processing-4.0a1-macosx.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1270-4.0a1/processing-4.0a1-macosx.zip", + "size": 256123008 } }, { "node": { "name": "processing-4.0a1-windows64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1270-4.0a1/processing-4.0a1-windows64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1270-4.0a1/processing-4.0a1-windows64.zip", + "size": 213048096 } } ] diff --git a/content/download/releases/processing-1271-4.0a2.json b/content/download/releases/processing-1271-4.0a2.json index 4e1958a55..06a32d786 100644 --- a/content/download/releases/processing-1271-4.0a2.json +++ b/content/download/releases/processing-1271-4.0a2.json @@ -1,25 +1,29 @@ { "name": "Processing 4.0 alpha 2", "tagName": "processing-1271-4.0a2", - "publishedAt": "2020-09-16T01:22:27Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:43:17Z", "releaseAssets": { "edges": [ { "node": { "name": "processing-4.0a2-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1271-4.0a2/processing-4.0a2-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1271-4.0a2/processing-4.0a2-linux64.tgz", + "size": 207542599 } }, { "node": { "name": "processing-4.0a2-macosx.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1271-4.0a2/processing-4.0a2-macosx.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1271-4.0a2/processing-4.0a2-macosx.zip", + "size": 271240063 } }, { "node": { "name": "processing-4.0a2-windows64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1271-4.0a2/processing-4.0a2-windows64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1271-4.0a2/processing-4.0a2-windows64.zip", + "size": 215840649 } } ] diff --git a/content/download/releases/processing-1272-4.0a3.json b/content/download/releases/processing-1272-4.0a3.json index 506983dc7..e3a1378ea 100644 --- a/content/download/releases/processing-1272-4.0a3.json +++ b/content/download/releases/processing-1272-4.0a3.json @@ -1,25 +1,29 @@ { "name": "Processing 4.0 alpha 3", "tagName": "processing-1272-4.0a3", - "publishedAt": "2021-01-18T03:07:44Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:43:22Z", "releaseAssets": { "edges": [ { "node": { "name": "processing-4.0a3-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1272-4.0a3/processing-4.0a3-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1272-4.0a3/processing-4.0a3-linux64.tgz", + "size": 229885818 } }, { "node": { "name": "processing-4.0a3-macosx.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1272-4.0a3/processing-4.0a3-macosx.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1272-4.0a3/processing-4.0a3-macosx.zip", + "size": 281348666 } }, { "node": { "name": "processing-4.0a3-windows64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1272-4.0a3/processing-4.0a3-windows64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1272-4.0a3/processing-4.0a3-windows64.zip", + "size": 230245774 } } ] diff --git a/content/download/releases/processing-1273-4.0a4.json b/content/download/releases/processing-1273-4.0a4.json index 5c46bb4d9..ec7c0001f 100644 --- a/content/download/releases/processing-1273-4.0a4.json +++ b/content/download/releases/processing-1273-4.0a4.json @@ -1,25 +1,29 @@ { "name": "Processing 4.0 alpha 4", "tagName": "processing-1273-4.0a4", - "publishedAt": "2021-06-15T22:40:02Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:43:27Z", "releaseAssets": { "edges": [ { "node": { - "name": "processing-4.0a4-windows64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1273-4.0a4/processing-4.0a4-windows64.zip" + "name": "processing-4.0a4-linux64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1273-4.0a4/processing-4.0a4-linux64.tgz", + "size": 228628073 } }, { "node": { "name": "processing-4.0a4-macosx.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1273-4.0a4/processing-4.0a4-macosx.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1273-4.0a4/processing-4.0a4-macosx.zip", + "size": 301527205 } }, { "node": { - "name": "processing-4.0a4-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1273-4.0a4/processing-4.0a4-linux64.tgz" + "name": "processing-4.0a4-windows64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1273-4.0a4/processing-4.0a4-windows64.zip", + "size": 255860310 } } ] diff --git a/content/download/releases/processing-1274-4.0a5.json b/content/download/releases/processing-1274-4.0a5.json index 74678d4e0..da48e930d 100644 --- a/content/download/releases/processing-1274-4.0a5.json +++ b/content/download/releases/processing-1274-4.0a5.json @@ -1,25 +1,29 @@ { "name": "Processing 4.0 alpha 5", "tagName": "processing-1274-4.0a5", - "publishedAt": "2021-06-24T19:32:05Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:43:32Z", "releaseAssets": { "edges": [ { "node": { - "name": "processing-4.0a5-windows64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1274-4.0a5/processing-4.0a5-windows64.zip" + "name": "processing-4.0a5-linux64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1274-4.0a5/processing-4.0a5-linux64.tgz", + "size": 366839366 } }, { "node": { "name": "processing-4.0a5-macosx.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1274-4.0a5/processing-4.0a5-macosx.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1274-4.0a5/processing-4.0a5-macosx.zip", + "size": 364901904 } }, { "node": { - "name": "processing-4.0a5-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1274-4.0a5/processing-4.0a5-linux64.tgz" + "name": "processing-4.0a5-windows64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1274-4.0a5/processing-4.0a5-windows64.zip", + "size": 375019014 } } ] diff --git a/content/download/releases/processing-1275-4.0a6.json b/content/download/releases/processing-1275-4.0a6.json index 67927d301..4ebd95327 100644 --- a/content/download/releases/processing-1275-4.0a6.json +++ b/content/download/releases/processing-1275-4.0a6.json @@ -1,25 +1,29 @@ { "name": "Processing 4.0 alpha 6", "tagName": "processing-1275-4.0a6", - "publishedAt": "2021-07-10T21:58:26Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:43:36Z", "releaseAssets": { "edges": [ { "node": { - "name": "processing-4.0a6-macosx.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1275-4.0a6/processing-4.0a6-macosx.zip" + "name": "processing-4.0a6-linux64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1275-4.0a6/processing-4.0a6-linux64.tgz", + "size": 348496075 } }, { "node": { - "name": "processing-4.0a6-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1275-4.0a6/processing-4.0a6-linux64.tgz" + "name": "processing-4.0a6-macosx.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1275-4.0a6/processing-4.0a6-macosx.zip", + "size": 342296245 } }, { "node": { "name": "processing-4.0a6-windows64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1275-4.0a6/processing-4.0a6-windows64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1275-4.0a6/processing-4.0a6-windows64.zip", + "size": 354649541 } } ] diff --git a/content/download/releases/processing-1276-4.0b1.json b/content/download/releases/processing-1276-4.0b1.json index b213c6be5..2209d0986 100644 --- a/content/download/releases/processing-1276-4.0b1.json +++ b/content/download/releases/processing-1276-4.0b1.json @@ -1,25 +1,29 @@ { "name": "Processing 4.0 beta 1", "tagName": "processing-1276-4.0b1", - "publishedAt": "2021-08-09T11:27:08Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:43:42Z", "releaseAssets": { "edges": [ { "node": { - "name": "processing-4.0b1-macosx.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1276-4.0b1/processing-4.0b1-macosx.zip" + "name": "processing-4.0b1-linux64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1276-4.0b1/processing-4.0b1-linux64.tgz", + "size": 349755794 } }, { "node": { - "name": "processing-4.0b1-windows64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1276-4.0b1/processing-4.0b1-windows64.zip" + "name": "processing-4.0b1-macosx.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1276-4.0b1/processing-4.0b1-macosx.zip", + "size": 341637227 } }, { "node": { - "name": "processing-4.0b1-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1276-4.0b1/processing-4.0b1-linux64.tgz" + "name": "processing-4.0b1-windows64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1276-4.0b1/processing-4.0b1-windows64.zip", + "size": 353850243 } } ] diff --git a/content/download/releases/processing-1277-4.0b2.json b/content/download/releases/processing-1277-4.0b2.json index 5ab02d99b..3975dd2c0 100644 --- a/content/download/releases/processing-1277-4.0b2.json +++ b/content/download/releases/processing-1277-4.0b2.json @@ -1,25 +1,29 @@ { "name": "Processing 4.0 beta 2", "tagName": "processing-1277-4.0b2", - "publishedAt": "2021-10-05T03:11:37Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:43:47Z", "releaseAssets": { "edges": [ { "node": { - "name": "processing-4.0b2-windows64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1277-4.0b2/processing-4.0b2-windows64.zip" + "name": "processing-4.0b2-linux64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1277-4.0b2/processing-4.0b2-linux64.tgz", + "size": 348014362 } }, { "node": { "name": "processing-4.0b2-macosx.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1277-4.0b2/processing-4.0b2-macosx.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1277-4.0b2/processing-4.0b2-macosx.zip", + "size": 341329896 } }, { "node": { - "name": "processing-4.0b2-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1277-4.0b2/processing-4.0b2-linux64.tgz" + "name": "processing-4.0b2-windows64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1277-4.0b2/processing-4.0b2-windows64.zip", + "size": 353547676 } } ] diff --git a/content/download/releases/processing-1278-4.0b3.json b/content/download/releases/processing-1278-4.0b3.json index 71a1015a3..ac578dcb8 100644 --- a/content/download/releases/processing-1278-4.0b3.json +++ b/content/download/releases/processing-1278-4.0b3.json @@ -1,25 +1,29 @@ { "name": "Processing 4.0b3", "tagName": "processing-1278-4.0b3", - "publishedAt": "2022-01-15T15:35:37Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:43:52Z", "releaseAssets": { "edges": [ { "node": { "name": "processing-4.0b3-linux64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1278-4.0b3/processing-4.0b3-linux64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1278-4.0b3/processing-4.0b3-linux64.tgz", + "size": 498958112 } }, { "node": { - "name": "processing-4.0b3-windows64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1278-4.0b3/processing-4.0b3-windows64.zip" + "name": "processing-4.0b3-macosx.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1278-4.0b3/processing-4.0b3-macosx.zip", + "size": 493803525 } }, { "node": { - "name": "processing-4.0b3-macosx.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1278-4.0b3/processing-4.0b3-macosx.zip" + "name": "processing-4.0b3-windows64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1278-4.0b3/processing-4.0b3-windows64.zip", + "size": 493232119 } } ] diff --git a/content/download/releases/processing-1279-4.0b4.json b/content/download/releases/processing-1279-4.0b4.json index 35de8f2a0..f442bc2e5 100644 --- a/content/download/releases/processing-1279-4.0b4.json +++ b/content/download/releases/processing-1279-4.0b4.json @@ -1,43 +1,50 @@ { "name": "Processing 4.0 beta 4", "tagName": "processing-1279-4.0b4", - "publishedAt": "2022-01-24T13:44:10Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:43:57Z", "releaseAssets": { "edges": [ { "node": { "name": "processing-4.0b4-linux-arm32.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1279-4.0b4/processing-4.0b4-linux-arm32.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1279-4.0b4/processing-4.0b4-linux-arm32.tgz", + "size": 233087044 } }, { "node": { "name": "processing-4.0b4-linux-arm64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1279-4.0b4/processing-4.0b4-linux-arm64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1279-4.0b4/processing-4.0b4-linux-arm64.tgz", + "size": 232844009 } }, { "node": { "name": "processing-4.0b4-linux-x64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1279-4.0b4/processing-4.0b4-linux-x64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1279-4.0b4/processing-4.0b4-linux-x64.tgz", + "size": 236159874 } }, { "node": { "name": "processing-4.0b4-macos-aarch64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1279-4.0b4/processing-4.0b4-macos-aarch64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1279-4.0b4/processing-4.0b4-macos-aarch64.zip", + "size": 221088009 } }, { "node": { "name": "processing-4.0b4-macos-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1279-4.0b4/processing-4.0b4-macos-x64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1279-4.0b4/processing-4.0b4-macos-x64.zip", + "size": 230894290 } }, { "node": { "name": "processing-4.0b4-windows-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1279-4.0b4/processing-4.0b4-windows-x64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1279-4.0b4/processing-4.0b4-windows-x64.zip", + "size": 230269129 } } ] diff --git a/content/download/releases/processing-1280-4.0b5.json b/content/download/releases/processing-1280-4.0b5.json index 5905a6d82..5fd19d64d 100644 --- a/content/download/releases/processing-1280-4.0b5.json +++ b/content/download/releases/processing-1280-4.0b5.json @@ -1,43 +1,50 @@ { "name": "Processing 4.0 beta 5", "tagName": "processing-1280-4.0b5", - "publishedAt": "2022-02-04T00:49:12Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:44:02Z", "releaseAssets": { "edges": [ { "node": { "name": "processing-4.0b5-linux-arm32.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1280-4.0b5/processing-4.0b5-linux-arm32.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1280-4.0b5/processing-4.0b5-linux-arm32.tgz", + "size": 232024892 } }, { "node": { "name": "processing-4.0b5-linux-arm64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1280-4.0b5/processing-4.0b5-linux-arm64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1280-4.0b5/processing-4.0b5-linux-arm64.tgz", + "size": 231786695 } }, { "node": { "name": "processing-4.0b5-linux-x64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1280-4.0b5/processing-4.0b5-linux-x64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1280-4.0b5/processing-4.0b5-linux-x64.tgz", + "size": 234844723 } }, { "node": { "name": "processing-4.0b5-macos-aarch64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1280-4.0b5/processing-4.0b5-macos-aarch64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1280-4.0b5/processing-4.0b5-macos-aarch64.zip", + "size": 220039272 } }, { "node": { "name": "processing-4.0b5-macos-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1280-4.0b5/processing-4.0b5-macos-x64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1280-4.0b5/processing-4.0b5-macos-x64.zip", + "size": 229845771 } }, { "node": { "name": "processing-4.0b5-windows-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1280-4.0b5/processing-4.0b5-windows-x64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1280-4.0b5/processing-4.0b5-windows-x64.zip", + "size": 228979875 } } ] diff --git a/content/download/releases/processing-1281-4.0b6.json b/content/download/releases/processing-1281-4.0b6.json index 070b0f789..339ff8daf 100644 --- a/content/download/releases/processing-1281-4.0b6.json +++ b/content/download/releases/processing-1281-4.0b6.json @@ -1,43 +1,50 @@ { "name": "Processing 4.0 beta 6", "tagName": "processing-1281-4.0b6", - "publishedAt": "2022-02-13T18:31:06Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:44:07Z", "releaseAssets": { "edges": [ { "node": { - "name": "processing-4.0b6-macos-aarch64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1281-4.0b6/processing-4.0b6-macos-aarch64.zip" + "name": "processing-4.0b6-linux-arm32.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1281-4.0b6/processing-4.0b6-linux-arm32.tgz", + "size": 232076307 } }, { "node": { - "name": "processing-4.0b6-macos-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1281-4.0b6/processing-4.0b6-macos-x64.zip" + "name": "processing-4.0b6-linux-arm64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1281-4.0b6/processing-4.0b6-linux-arm64.tgz", + "size": 231869242 } }, { "node": { - "name": "processing-4.0b6-windows-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1281-4.0b6/processing-4.0b6-windows-x64.zip" + "name": "processing-4.0b6-linux-x64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1281-4.0b6/processing-4.0b6-linux-x64.tgz", + "size": 234908227 } }, { "node": { - "name": "processing-4.0b6-linux-x64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1281-4.0b6/processing-4.0b6-linux-x64.tgz" + "name": "processing-4.0b6-macos-aarch64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1281-4.0b6/processing-4.0b6-macos-aarch64.zip", + "size": 220173525 } }, { "node": { - "name": "processing-4.0b6-linux-arm64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1281-4.0b6/processing-4.0b6-linux-arm64.tgz" + "name": "processing-4.0b6-macos-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1281-4.0b6/processing-4.0b6-macos-x64.zip", + "size": 229991135 } }, { "node": { - "name": "processing-4.0b6-linux-arm32.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1281-4.0b6/processing-4.0b6-linux-arm32.tgz" + "name": "processing-4.0b6-windows-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1281-4.0b6/processing-4.0b6-windows-x64.zip", + "size": 229025090 } } ] diff --git a/content/download/releases/processing-1282-4.0b7.json b/content/download/releases/processing-1282-4.0b7.json index 0469aa23e..4308e1cc6 100644 --- a/content/download/releases/processing-1282-4.0b7.json +++ b/content/download/releases/processing-1282-4.0b7.json @@ -1,43 +1,50 @@ { "name": "Processing 4.0 beta 7", "tagName": "processing-1282-4.0b7", - "publishedAt": "2022-03-04T01:04:36Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:44:12Z", "releaseAssets": { "edges": [ { "node": { - "name": "processing-4.0b7-linux-x64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1282-4.0b7/processing-4.0b7-linux-x64.tgz" + "name": "processing-4.0b7-linux-arm32.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1282-4.0b7/processing-4.0b7-linux-arm32.tgz", + "size": 232045598 } }, { "node": { - "name": "processing-4.0b7-macos-aarch64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1282-4.0b7/processing-4.0b7-macos-aarch64.zip" + "name": "processing-4.0b7-linux-arm64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1282-4.0b7/processing-4.0b7-linux-arm64.tgz", + "size": 231878759 } }, { "node": { - "name": "processing-4.0b7-macos-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1282-4.0b7/processing-4.0b7-macos-x64.zip" + "name": "processing-4.0b7-linux-x64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1282-4.0b7/processing-4.0b7-linux-x64.tgz", + "size": 234909381 } }, { "node": { - "name": "processing-4.0b7-windows-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1282-4.0b7/processing-4.0b7-windows-x64.zip" + "name": "processing-4.0b7-macos-aarch64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1282-4.0b7/processing-4.0b7-macos-aarch64.zip", + "size": 220175209 } }, { "node": { - "name": "processing-4.0b7-linux-arm32.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1282-4.0b7/processing-4.0b7-linux-arm32.tgz" + "name": "processing-4.0b7-macos-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1282-4.0b7/processing-4.0b7-macos-x64.zip", + "size": 229992470 } }, { "node": { - "name": "processing-4.0b7-linux-arm64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1282-4.0b7/processing-4.0b7-linux-arm64.tgz" + "name": "processing-4.0b7-windows-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1282-4.0b7/processing-4.0b7-windows-x64.zip", + "size": 229027053 } } ] diff --git a/content/download/releases/processing-1283-4.0b8.json b/content/download/releases/processing-1283-4.0b8.json index a74854647..e14cc24ad 100644 --- a/content/download/releases/processing-1283-4.0b8.json +++ b/content/download/releases/processing-1283-4.0b8.json @@ -1,43 +1,50 @@ { "name": "Processing 4.0 beta 8", "tagName": "processing-1283-4.0b8", - "publishedAt": "2022-04-23T19:46:06Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:44:17Z", "releaseAssets": { "edges": [ { "node": { - "name": "processing-4.0b8-macos-aarch64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1283-4.0b8/processing-4.0b8-macos-aarch64.zip" + "name": "processing-4.0b8-linux-arm32.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1283-4.0b8/processing-4.0b8-linux-arm32.tgz", + "size": 232047451 } }, { "node": { - "name": "processing-4.0b8-linux-arm32.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1283-4.0b8/processing-4.0b8-linux-arm32.tgz" + "name": "processing-4.0b8-linux-arm64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1283-4.0b8/processing-4.0b8-linux-arm64.tgz", + "size": 231870581 } }, { "node": { - "name": "processing-4.0b8-linux-arm64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1283-4.0b8/processing-4.0b8-linux-arm64.tgz" + "name": "processing-4.0b8-linux-x64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1283-4.0b8/processing-4.0b8-linux-x64.tgz", + "size": 234913427 } }, { "node": { - "name": "processing-4.0b8-macos-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1283-4.0b8/processing-4.0b8-macos-x64.zip" + "name": "processing-4.0b8-macos-aarch64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1283-4.0b8/processing-4.0b8-macos-aarch64.zip", + "size": 220175412 } }, { "node": { - "name": "processing-4.0b8-windows-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1283-4.0b8/processing-4.0b8-windows-x64.zip" + "name": "processing-4.0b8-macos-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1283-4.0b8/processing-4.0b8-macos-x64.zip", + "size": 229994035 } }, { "node": { - "name": "processing-4.0b8-linux-x64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1283-4.0b8/processing-4.0b8-linux-x64.tgz" + "name": "processing-4.0b8-windows-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1283-4.0b8/processing-4.0b8-windows-x64.zip", + "size": 229027198 } } ] diff --git a/content/download/releases/processing-1284-4.0b9.json b/content/download/releases/processing-1284-4.0b9.json index abbd7d2cd..aadcd8aaa 100644 --- a/content/download/releases/processing-1284-4.0b9.json +++ b/content/download/releases/processing-1284-4.0b9.json @@ -1,43 +1,50 @@ { "name": "Processing 4.0 beta 9", "tagName": "processing-1284-4.0b9", - "publishedAt": "2022-08-05T02:05:15Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:44:22Z", "releaseAssets": { "edges": [ { "node": { "name": "processing-4.0b9-linux-arm32.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1284-4.0b9/processing-4.0b9-linux-arm32.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1284-4.0b9/processing-4.0b9-linux-arm32.tgz", + "size": 224192557 } }, { "node": { - "name": "processing-4.0b9-linux-x64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1284-4.0b9/processing-4.0b9-linux-x64.tgz" + "name": "processing-4.0b9-linux-arm64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1284-4.0b9/processing-4.0b9-linux-arm64.tgz", + "size": 225735347 } }, { "node": { - "name": "processing-4.0b9-macos-aarch64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1284-4.0b9/processing-4.0b9-macos-aarch64.zip" + "name": "processing-4.0b9-linux-x64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1284-4.0b9/processing-4.0b9-linux-x64.tgz", + "size": 227130930 } }, { "node": { - "name": "processing-4.0b9-macos-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1284-4.0b9/processing-4.0b9-macos-x64.zip" + "name": "processing-4.0b9-macos-aarch64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1284-4.0b9/processing-4.0b9-macos-aarch64.zip", + "size": 212227367 } }, { "node": { - "name": "processing-4.0b9-windows-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1284-4.0b9/processing-4.0b9-windows-x64.zip" + "name": "processing-4.0b9-macos-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1284-4.0b9/processing-4.0b9-macos-x64.zip", + "size": 222251579 } }, { "node": { - "name": "processing-4.0b9-linux-arm64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1284-4.0b9/processing-4.0b9-linux-arm64.tgz" + "name": "processing-4.0b9-windows-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1284-4.0b9/processing-4.0b9-windows-x64.zip", + "size": 221720910 } } ] diff --git a/content/download/releases/processing-1285-4.0.json b/content/download/releases/processing-1285-4.0.json index 66e53b94f..486075610 100644 --- a/content/download/releases/processing-1285-4.0.json +++ b/content/download/releases/processing-1285-4.0.json @@ -1,43 +1,50 @@ { "name": "Processing 4.0", "tagName": "processing-1285-4.0", - "publishedAt": "2022-08-09T12:24:02Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:44:27Z", "releaseAssets": { "edges": [ + { + "node": { + "name": "processing-4.0-linux-arm32.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1285-4.0/processing-4.0-linux-arm32.tgz", + "size": 214529805 + } + }, { "node": { "name": "processing-4.0-linux-arm64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1285-4.0/processing-4.0-linux-arm64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1285-4.0/processing-4.0-linux-arm64.tgz", + "size": 225525766 } }, { "node": { "name": "processing-4.0-linux-x64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1285-4.0/processing-4.0-linux-x64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1285-4.0/processing-4.0-linux-x64.tgz", + "size": 227804786 } }, { "node": { "name": "processing-4.0-macos-aarch64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1285-4.0/processing-4.0-macos-aarch64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1285-4.0/processing-4.0-macos-aarch64.zip", + "size": 203876284 } }, { "node": { "name": "processing-4.0-macos-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1285-4.0/processing-4.0-macos-x64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1285-4.0/processing-4.0-macos-x64.zip", + "size": 221965034 } }, { "node": { "name": "processing-4.0-windows-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1285-4.0/processing-4.0-windows-x64.zip" - } - }, - { - "node": { - "name": "processing-4.0-linux-arm32.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1285-4.0/processing-4.0-linux-arm32.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1285-4.0/processing-4.0-windows-x64.zip", + "size": 222445226 } } ] diff --git a/content/download/releases/processing-1286-4.0.1.json b/content/download/releases/processing-1286-4.0.1.json index 1b6b43b74..51da8dbd7 100644 --- a/content/download/releases/processing-1286-4.0.1.json +++ b/content/download/releases/processing-1286-4.0.1.json @@ -1,43 +1,50 @@ { "name": "Processing 4.0.1", "tagName": "processing-1286-4.0.1", - "publishedAt": "2022-08-09T19:50:39Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:44:32Z", "releaseAssets": { "edges": [ { "node": { "name": "processing-4.0.1-linux-arm32.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1286-4.0.1/processing-4.0.1-linux-arm32.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1286-4.0.1/processing-4.0.1-linux-arm32.tgz", + "size": 214545502 } }, { "node": { "name": "processing-4.0.1-linux-arm64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1286-4.0.1/processing-4.0.1-linux-arm64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1286-4.0.1/processing-4.0.1-linux-arm64.tgz", + "size": 225530466 } }, { "node": { "name": "processing-4.0.1-linux-x64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1286-4.0.1/processing-4.0.1-linux-x64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1286-4.0.1/processing-4.0.1-linux-x64.tgz", + "size": 227806149 } }, { "node": { "name": "processing-4.0.1-macos-aarch64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1286-4.0.1/processing-4.0.1-macos-aarch64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1286-4.0.1/processing-4.0.1-macos-aarch64.zip", + "size": 203933004 } }, { "node": { "name": "processing-4.0.1-macos-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1286-4.0.1/processing-4.0.1-macos-x64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1286-4.0.1/processing-4.0.1-macos-x64.zip", + "size": 221966097 } }, { "node": { "name": "processing-4.0.1-windows-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1286-4.0.1/processing-4.0.1-windows-x64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1286-4.0.1/processing-4.0.1-windows-x64.zip", + "size": 222452565 } } ] diff --git a/content/download/releases/processing-1287-4.0.2.json b/content/download/releases/processing-1287-4.0.2.json index fce59a07f..1b8eefe9d 100644 --- a/content/download/releases/processing-1287-4.0.2.json +++ b/content/download/releases/processing-1287-4.0.2.json @@ -1,43 +1,50 @@ { "name": "Processing 4.0.2", "tagName": "processing-1287-4.0.2", - "publishedAt": "2022-11-25T01:50:13Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:44:37Z", "releaseAssets": { "edges": [ { "node": { "name": "processing-4.0.2-linux-arm32.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1287-4.0.2/processing-4.0.2-linux-arm32.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1287-4.0.2/processing-4.0.2-linux-arm32.tgz", + "size": 214703694 } }, { "node": { "name": "processing-4.0.2-linux-arm64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1287-4.0.2/processing-4.0.2-linux-arm64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1287-4.0.2/processing-4.0.2-linux-arm64.tgz", + "size": 225694228 } }, { "node": { "name": "processing-4.0.2-linux-x64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1287-4.0.2/processing-4.0.2-linux-x64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1287-4.0.2/processing-4.0.2-linux-x64.tgz", + "size": 227952157 } }, { "node": { "name": "processing-4.0.2-macos-aarch64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1287-4.0.2/processing-4.0.2-macos-aarch64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1287-4.0.2/processing-4.0.2-macos-aarch64.zip", + "size": 204105991 } }, { "node": { "name": "processing-4.0.2-macos-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1287-4.0.2/processing-4.0.2-macos-x64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1287-4.0.2/processing-4.0.2-macos-x64.zip", + "size": 222137458 } }, { "node": { "name": "processing-4.0.2-windows-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1287-4.0.2/processing-4.0.2-windows-x64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1287-4.0.2/processing-4.0.2-windows-x64.zip", + "size": 222651953 } } ] diff --git a/content/download/releases/processing-1288-4.1.json b/content/download/releases/processing-1288-4.1.json index b34ef35b6..65fb350a2 100644 --- a/content/download/releases/processing-1288-4.1.json +++ b/content/download/releases/processing-1288-4.1.json @@ -1,43 +1,50 @@ { "name": "Processing 4.1", "tagName": "processing-1288-4.1", - "publishedAt": "2022-11-28T11:54:31Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:44:42Z", "releaseAssets": { "edges": [ { "node": { "name": "processing-4.1-linux-arm32.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1288-4.1/processing-4.1-linux-arm32.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1288-4.1/processing-4.1-linux-arm32.tgz", + "size": 216184184 } }, { "node": { "name": "processing-4.1-linux-arm64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1288-4.1/processing-4.1-linux-arm64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1288-4.1/processing-4.1-linux-arm64.tgz", + "size": 227144387 } }, { "node": { "name": "processing-4.1-linux-x64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1288-4.1/processing-4.1-linux-x64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1288-4.1/processing-4.1-linux-x64.tgz", + "size": 229395885 } }, { "node": { "name": "processing-4.1-macos-aarch64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1288-4.1/processing-4.1-macos-aarch64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1288-4.1/processing-4.1-macos-aarch64.zip", + "size": 205434817 } }, { "node": { "name": "processing-4.1-macos-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1288-4.1/processing-4.1-macos-x64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1288-4.1/processing-4.1-macos-x64.zip", + "size": 223570612 } }, { "node": { "name": "processing-4.1-windows-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1288-4.1/processing-4.1-windows-x64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1288-4.1/processing-4.1-windows-x64.zip", + "size": 223863540 } } ] diff --git a/content/download/releases/processing-1289-4.1.1.json b/content/download/releases/processing-1289-4.1.1.json index bd9204a0a..c08285e32 100644 --- a/content/download/releases/processing-1289-4.1.1.json +++ b/content/download/releases/processing-1289-4.1.1.json @@ -1,43 +1,50 @@ { "name": "Processing 4.1.1", "tagName": "processing-1289-4.1.1", - "publishedAt": "2022-11-28T15:29:47Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:44:47Z", "releaseAssets": { "edges": [ { "node": { "name": "processing-4.1.1-linux-arm32.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1289-4.1.1/processing-4.1.1-linux-arm32.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1289-4.1.1/processing-4.1.1-linux-arm32.tgz", + "size": 216419504 } }, { "node": { "name": "processing-4.1.1-linux-arm64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1289-4.1.1/processing-4.1.1-linux-arm64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1289-4.1.1/processing-4.1.1-linux-arm64.tgz", + "size": 227382130 } }, { "node": { "name": "processing-4.1.1-linux-x64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1289-4.1.1/processing-4.1.1-linux-x64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1289-4.1.1/processing-4.1.1-linux-x64.tgz", + "size": 229636396 } }, { "node": { "name": "processing-4.1.1-macos-aarch64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1289-4.1.1/processing-4.1.1-macos-aarch64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1289-4.1.1/processing-4.1.1-macos-aarch64.zip", + "size": 205670054 } }, { "node": { "name": "processing-4.1.1-macos-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1289-4.1.1/processing-4.1.1-macos-x64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1289-4.1.1/processing-4.1.1-macos-x64.zip", + "size": 223806494 } }, { "node": { "name": "processing-4.1.1-windows-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1289-4.1.1/processing-4.1.1-windows-x64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1289-4.1.1/processing-4.1.1-windows-x64.zip", + "size": 224141084 } } ] diff --git a/content/download/releases/processing-1290-4.1.2.json b/content/download/releases/processing-1290-4.1.2.json index 8abca10de..73bafc9d0 100644 --- a/content/download/releases/processing-1290-4.1.2.json +++ b/content/download/releases/processing-1290-4.1.2.json @@ -1,43 +1,50 @@ { "name": "Processing 4.1.2", "tagName": "processing-1290-4.1.2", - "publishedAt": "2023-01-16T21:26:16Z", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:44:52Z", "releaseAssets": { "edges": [ { "node": { "name": "processing-4.1.2-linux-arm32.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1290-4.1.2/processing-4.1.2-linux-arm32.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1290-4.1.2/processing-4.1.2-linux-arm32.tgz", + "size": 216420845 } }, { "node": { "name": "processing-4.1.2-linux-arm64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1290-4.1.2/processing-4.1.2-linux-arm64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1290-4.1.2/processing-4.1.2-linux-arm64.tgz", + "size": 224289625 } }, { "node": { "name": "processing-4.1.2-linux-x64.tgz", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1290-4.1.2/processing-4.1.2-linux-x64.tgz" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1290-4.1.2/processing-4.1.2-linux-x64.tgz", + "size": 229626005 } }, { "node": { "name": "processing-4.1.2-macos-aarch64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1290-4.1.2/processing-4.1.2-macos-aarch64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1290-4.1.2/processing-4.1.2-macos-aarch64.zip", + "size": 205660516 } }, { "node": { "name": "processing-4.1.2-macos-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1290-4.1.2/processing-4.1.2-macos-x64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1290-4.1.2/processing-4.1.2-macos-x64.zip", + "size": 223796416 } }, { "node": { "name": "processing-4.1.2-windows-x64.zip", - "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1290-4.1.2/processing-4.1.2-windows-x64.zip" + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1290-4.1.2/processing-4.1.2-windows-x64.zip", + "size": 224095560 } } ] diff --git a/content/download/releases/processing-1291-4.1.3.json b/content/download/releases/processing-1291-4.1.3.json new file mode 100644 index 000000000..3165bb23d --- /dev/null +++ b/content/download/releases/processing-1291-4.1.3.json @@ -0,0 +1,52 @@ +{ + "name": "Processing 4.1.3", + "tagName": "processing-1291-4.1.3", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:44:57Z", + "releaseAssets": { + "edges": [ + { + "node": { + "name": "processing-4.1.3-linux-arm32.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1291-4.1.3/processing-4.1.3-linux-arm32.tgz", + "size": 216452277 + } + }, + { + "node": { + "name": "processing-4.1.3-linux-arm64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1291-4.1.3/processing-4.1.3-linux-arm64.tgz", + "size": 224343175 + } + }, + { + "node": { + "name": "processing-4.1.3-linux-x64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1291-4.1.3/processing-4.1.3-linux-x64.tgz", + "size": 229640302 + } + }, + { + "node": { + "name": "processing-4.1.3-macos-aarch64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1291-4.1.3/processing-4.1.3-macos-aarch64.zip", + "size": 205737155 + } + }, + { + "node": { + "name": "processing-4.1.3-macos-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1291-4.1.3/processing-4.1.3-macos-x64.zip", + "size": 223825776 + } + }, + { + "node": { + "name": "processing-4.1.3-windows-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1291-4.1.3/processing-4.1.3-windows-x64.zip", + "size": 224142866 + } + } + ] + } +} \ No newline at end of file diff --git a/content/download/releases/processing-1292-4.2.json b/content/download/releases/processing-1292-4.2.json new file mode 100644 index 000000000..2bb1e662d --- /dev/null +++ b/content/download/releases/processing-1292-4.2.json @@ -0,0 +1,52 @@ +{ + "name": "Processing 4.2", + "tagName": "processing-1292-4.2", + "isPrerelease": false, + "publishedAt": "2024-08-19T06:45:02Z", + "releaseAssets": { + "edges": [ + { + "node": { + "name": "processing-4.2-linux-arm32.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1292-4.2/processing-4.2-linux-arm32.tgz", + "size": 216474304 + } + }, + { + "node": { + "name": "processing-4.2-linux-arm64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1292-4.2/processing-4.2-linux-arm64.tgz", + "size": 224355690 + } + }, + { + "node": { + "name": "processing-4.2-linux-x64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1292-4.2/processing-4.2-linux-x64.tgz", + "size": 229659252 + } + }, + { + "node": { + "name": "processing-4.2-macos-aarch64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1292-4.2/processing-4.2-macos-aarch64.zip", + "size": 205702404 + } + }, + { + "node": { + "name": "processing-4.2-macos-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1292-4.2/processing-4.2-macos-x64.zip", + "size": 223849300 + } + }, + { + "node": { + "name": "processing-4.2-windows-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1292-4.2/processing-4.2-windows-x64.zip", + "size": 224232824 + } + } + ] + } +} \ No newline at end of file diff --git a/content/download/releases/processing-1293-4.3.json b/content/download/releases/processing-1293-4.3.json new file mode 100644 index 000000000..67ad0fa86 --- /dev/null +++ b/content/download/releases/processing-1293-4.3.json @@ -0,0 +1,52 @@ +{ + "name": "Processing 4.3", + "tagName": "processing-1293-4.3", + "isPrerelease": false, + "publishedAt": "2024-11-12T10:27:12Z", + "releaseAssets": { + "edges": [ + { + "node": { + "name": "processing-4.3-windows-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1293-4.3/processing-4.3-windows-x64.zip", + "size": 224561090 + } + }, + { + "node": { + "name": "processing-4.3-macos-aarch64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1293-4.3/processing-4.3-macos-aarch64.zip", + "size": 206501239 + } + }, + { + "node": { + "name": "processing-4.3-linux-x64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1293-4.3/processing-4.3-linux-x64.tgz", + "size": 230272890 + } + }, + { + "node": { + "name": "processing-4.3-linux-arm64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1293-4.3/processing-4.3-linux-arm64.tgz", + "size": 224913289 + } + }, + { + "node": { + "name": "processing-4.3-linux-arm32.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1293-4.3/processing-4.3-linux-arm32.tgz", + "size": 216978502 + } + }, + { + "node": { + "name": "processing-4.3-macos-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1293-4.3/processing-4.3-macos-x64.zip", + "size": 224688525 + } + } + ] + } +} \ No newline at end of file diff --git a/content/download/releases/processing-1294-4.3.1.json b/content/download/releases/processing-1294-4.3.1.json new file mode 100644 index 000000000..550b2804b --- /dev/null +++ b/content/download/releases/processing-1294-4.3.1.json @@ -0,0 +1,52 @@ +{ + "name": "Processing 4.3.1", + "tagName": "processing-1294-4.3.1", + "isPrerelease": false, + "publishedAt": "2024-11-12T14:38:51Z", + "releaseAssets": { + "edges": [ + { + "node": { + "name": "processing-4.3.1-linux-x64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1294-4.3.1/processing-4.3.1-linux-x64.tgz", + "size": 230253748 + } + }, + { + "node": { + "name": "processing-4.3.1-macos-aarch64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1294-4.3.1/processing-4.3.1-macos-aarch64.zip", + "size": 205820930 + } + }, + { + "node": { + "name": "processing-4.3.1-windows-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1294-4.3.1/processing-4.3.1-windows-x64.zip", + "size": 224584826 + } + }, + { + "node": { + "name": "processing-4.3.1-linux-arm32.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1294-4.3.1/processing-4.3.1-linux-arm32.tgz", + "size": 216958864 + } + }, + { + "node": { + "name": "processing-4.3.1-macos-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1294-4.3.1/processing-4.3.1-macos-x64.zip", + "size": 224010374 + } + }, + { + "node": { + "name": "processing-4.3.1-linux-arm64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1294-4.3.1/processing-4.3.1-linux-arm64.tgz", + "size": 217843538 + } + } + ] + } +} \ No newline at end of file diff --git a/content/download/releases/processing-1295-4.3.2.json b/content/download/releases/processing-1295-4.3.2.json new file mode 100644 index 000000000..6d0b97386 --- /dev/null +++ b/content/download/releases/processing-1295-4.3.2.json @@ -0,0 +1,52 @@ +{ + "name": "Processing 4.3.2", + "tagName": "processing-1295-4.3.2", + "isPrerelease": false, + "publishedAt": "2024-12-12T16:24:59Z", + "releaseAssets": { + "edges": [ + { + "node": { + "name": "processing-4.3.2-linux-x64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1295-4.3.2/processing-4.3.2-linux-x64.tgz", + "size": 230291936 + } + }, + { + "node": { + "name": "processing-4.3.2-windows-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1295-4.3.2/processing-4.3.2-windows-x64.zip", + "size": 224585619 + } + }, + { + "node": { + "name": "processing-4.3.2-macos-aarch64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1295-4.3.2/processing-4.3.2-macos-aarch64.zip", + "size": 205822198 + } + }, + { + "node": { + "name": "processing-4.3.2-macos-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1295-4.3.2/processing-4.3.2-macos-x64.zip", + "size": 224009975 + } + }, + { + "node": { + "name": "processing-4.3.2-linux-arm32.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1295-4.3.2/processing-4.3.2-linux-arm32.tgz", + "size": 216959595 + } + }, + { + "node": { + "name": "processing-4.3.2-linux-arm64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1295-4.3.2/processing-4.3.2-linux-arm64.tgz", + "size": 217844946 + } + } + ] + } +} \ No newline at end of file diff --git a/content/download/releases/processing-1296-4.3.3.json b/content/download/releases/processing-1296-4.3.3.json new file mode 100644 index 000000000..778713c29 --- /dev/null +++ b/content/download/releases/processing-1296-4.3.3.json @@ -0,0 +1,52 @@ +{ + "name": "Processing 4.3.3", + "tagName": "processing-1296-4.3.3", + "isPrerelease": false, + "publishedAt": "2025-01-21T17:12:48Z", + "releaseAssets": { + "edges": [ + { + "node": { + "name": "processing-4.3.3-linux-x64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1296-4.3.3/processing-4.3.3-linux-x64.tgz", + "size": 230296693 + } + }, + { + "node": { + "name": "processing-4.3.3-linux-arm64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1296-4.3.3/processing-4.3.3-linux-arm64.tgz", + "size": 217852680 + } + }, + { + "node": { + "name": "processing-4.3.3-windows-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1296-4.3.3/processing-4.3.3-windows-x64.zip", + "size": 224596464 + } + }, + { + "node": { + "name": "processing-4.3.3-linux-arm32.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1296-4.3.3/processing-4.3.3-linux-arm32.tgz", + "size": 216974908 + } + }, + { + "node": { + "name": "processing-4.3.3-macos-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1296-4.3.3/processing-4.3.3-macos-x64.zip", + "size": 224027253 + } + }, + { + "node": { + "name": "processing-4.3.3-macos-aarch64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1296-4.3.3/processing-4.3.3-macos-aarch64.zip", + "size": 205839676 + } + } + ] + } +} \ No newline at end of file diff --git a/content/download/releases/processing-1297-4.3.4.json b/content/download/releases/processing-1297-4.3.4.json new file mode 100644 index 000000000..b10ddcdd9 --- /dev/null +++ b/content/download/releases/processing-1297-4.3.4.json @@ -0,0 +1,52 @@ +{ + "name": "Processing 4.3.4", + "tagName": "processing-1297-4.3.4", + "isPrerelease": false, + "publishedAt": "2025-02-21T09:15:06Z", + "releaseAssets": { + "edges": [ + { + "node": { + "name": "processing-4.3.4-linux-x64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1297-4.3.4/processing-4.3.4-linux-x64.tgz", + "size": 230339742 + } + }, + { + "node": { + "name": "processing-4.3.4-linux-arm64.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1297-4.3.4/processing-4.3.4-linux-arm64.tgz", + "size": 217906161 + } + }, + { + "node": { + "name": "processing-4.3.4-windows-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1297-4.3.4/processing-4.3.4-windows-x64.zip", + "size": 224647909 + } + }, + { + "node": { + "name": "processing-4.3.4-macos-aarch64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1297-4.3.4/processing-4.3.4-macos-aarch64.zip", + "size": 205888289 + } + }, + { + "node": { + "name": "processing-4.3.4-linux-arm32.tgz", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1297-4.3.4/processing-4.3.4-linux-arm32.tgz", + "size": 217032669 + } + }, + { + "node": { + "name": "processing-4.3.4-macos-x64.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1297-4.3.4/processing-4.3.4-macos-x64.zip", + "size": 224079603 + } + } + ] + } +} \ No newline at end of file diff --git a/content/download/releases/processing-1300-4.4.0.json b/content/download/releases/processing-1300-4.4.0.json new file mode 100644 index 000000000..ee08ef1e6 --- /dev/null +++ b/content/download/releases/processing-1300-4.4.0.json @@ -0,0 +1,87 @@ +{ + "name": "Processing 4.4.0", + "tagName": "processing-1300-4.4.0", + "isPrerelease": true, + "publishedAt": "2025-03-14T14:53:06Z", + "releaseAssets": { + "edges": [ + { + "node": { + "name": "processing-4.4.0-reference.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1300-4.4.0/processing-4.4.0-reference.zip", + "size": 70930928 + } + }, + { + "node": { + "name": "processing-4.4.0-linux-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1300-4.4.0/processing-4.4.0-linux-aarch64-portable.zip", + "size": 401891132 + } + }, + { + "node": { + "name": "processing-4.4.0-linux-aarch64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1300-4.4.0/processing-4.4.0-linux-aarch64.snap", + "size": 433680384 + } + }, + { + "node": { + "name": "processing-4.4.0-linux-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1300-4.4.0/processing-4.4.0-linux-x64-portable.zip", + "size": 407804765 + } + }, + { + "node": { + "name": "processing-4.4.0-linux-x64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1300-4.4.0/processing-4.4.0-linux-x64.snap", + "size": 446423040 + } + }, + { + "node": { + "name": "processing-4.4.0-windows-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1300-4.4.0/processing-4.4.0-windows-x64-portable.zip", + "size": 391393217 + } + }, + { + "node": { + "name": "processing-4.4.0-windows-x64.msi", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1300-4.4.0/processing-4.4.0-windows-x64.msi", + "size": 353599017 + } + }, + { + "node": { + "name": "processing-4.4.0-macos-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1300-4.4.0/processing-4.4.0-macos-aarch64-portable.zip", + "size": 403187832 + } + }, + { + "node": { + "name": "processing-4.4.0-macos-aarch64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1300-4.4.0/processing-4.4.0-macos-aarch64.dmg", + "size": 404779639 + } + }, + { + "node": { + "name": "processing-4.4.0-macos-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1300-4.4.0/processing-4.4.0-macos-x64-portable.zip", + "size": 398904393 + } + }, + { + "node": { + "name": "processing-4.4.0-macos-x64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1300-4.4.0/processing-4.4.0-macos-x64.dmg", + "size": 400390746 + } + } + ] + } +} \ No newline at end of file diff --git a/content/download/releases/processing-1301-4.4.1.json b/content/download/releases/processing-1301-4.4.1.json new file mode 100644 index 000000000..2405896b2 --- /dev/null +++ b/content/download/releases/processing-1301-4.4.1.json @@ -0,0 +1,87 @@ +{ + "name": "Processing 4.4.1", + "tagName": "processing-1301-4.4.1", + "isPrerelease": false, + "publishedAt": "2025-03-21T10:10:46Z", + "releaseAssets": { + "edges": [ + { + "node": { + "name": "processing-4.4.1-reference.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1301-4.4.1/processing-4.4.1-reference.zip", + "size": 106509315 + } + }, + { + "node": { + "name": "processing-4.4.1-linux-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1301-4.4.1/processing-4.4.1-linux-x64-portable.zip", + "size": 407821794 + } + }, + { + "node": { + "name": "processing-4.4.1-linux-x64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1301-4.4.1/processing-4.4.1-linux-x64.snap", + "size": 455467008 + } + }, + { + "node": { + "name": "processing-4.4.1-linux-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1301-4.4.1/processing-4.4.1-linux-aarch64-portable.zip", + "size": 401852722 + } + }, + { + "node": { + "name": "processing-4.4.1-linux-aarch64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1301-4.4.1/processing-4.4.1-linux-aarch64.snap", + "size": 441991168 + } + }, + { + "node": { + "name": "processing-4.4.1-macos-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1301-4.4.1/processing-4.4.1-macos-aarch64-portable.zip", + "size": 403727139 + } + }, + { + "node": { + "name": "processing-4.4.1-macos-aarch64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1301-4.4.1/processing-4.4.1-macos-aarch64.dmg", + "size": 405227717 + } + }, + { + "node": { + "name": "processing-4.4.1-macos-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1301-4.4.1/processing-4.4.1-macos-x64-portable.zip", + "size": 399622028 + } + }, + { + "node": { + "name": "processing-4.4.1-macos-x64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1301-4.4.1/processing-4.4.1-macos-x64.dmg", + "size": 401406570 + } + }, + { + "node": { + "name": "processing-4.4.1-windows-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1301-4.4.1/processing-4.4.1-windows-x64-portable.zip", + "size": 390947213 + } + }, + { + "node": { + "name": "processing-4.4.1-windows-x64.msi", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1301-4.4.1/processing-4.4.1-windows-x64.msi", + "size": 353234944 + } + } + ] + } +} \ No newline at end of file diff --git a/content/download/releases/processing-1302-4.4.2.json b/content/download/releases/processing-1302-4.4.2.json new file mode 100644 index 000000000..ac6d4ae7f --- /dev/null +++ b/content/download/releases/processing-1302-4.4.2.json @@ -0,0 +1,87 @@ +{ + "name": "Processing 4.4.2", + "tagName": "processing-1302-4.4.2", + "isPrerelease": true, + "publishedAt": "2025-04-15T10:16:32Z", + "releaseAssets": { + "edges": [ + { + "node": { + "name": "processing-4.4.2-reference.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1302-4.4.2/processing-4.4.2-reference.zip", + "size": 107739918 + } + }, + { + "node": { + "name": "processing-4.4.2-linux-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1302-4.4.2/processing-4.4.2-linux-x64-portable.zip", + "size": 407247504 + } + }, + { + "node": { + "name": "processing-4.4.2-linux-x64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1302-4.4.2/processing-4.4.2-linux-x64.snap", + "size": 454819840 + } + }, + { + "node": { + "name": "processing-4.4.2-linux-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1302-4.4.2/processing-4.4.2-linux-aarch64-portable.zip", + "size": 401273616 + } + }, + { + "node": { + "name": "processing-4.4.2-linux-aarch64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1302-4.4.2/processing-4.4.2-linux-aarch64.snap", + "size": 441339904 + } + }, + { + "node": { + "name": "processing-4.4.2-macos-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1302-4.4.2/processing-4.4.2-macos-aarch64-portable.zip", + "size": 403147883 + } + }, + { + "node": { + "name": "processing-4.4.2-macos-aarch64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1302-4.4.2/processing-4.4.2-macos-aarch64.dmg", + "size": 404639277 + } + }, + { + "node": { + "name": "processing-4.4.2-windows-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1302-4.4.2/processing-4.4.2-windows-x64-portable.zip", + "size": 390373274 + } + }, + { + "node": { + "name": "processing-4.4.2-windows-x64.msi", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1302-4.4.2/processing-4.4.2-windows-x64.msi", + "size": 352661504 + } + }, + { + "node": { + "name": "processing-4.4.2-macos-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1302-4.4.2/processing-4.4.2-macos-x64-portable.zip", + "size": 399040010 + } + }, + { + "node": { + "name": "processing-4.4.2-macos-x64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1302-4.4.2/processing-4.4.2-macos-x64.dmg", + "size": 400439373 + } + } + ] + } +} \ No newline at end of file diff --git a/content/download/releases/processing-1303-4.4.3.json b/content/download/releases/processing-1303-4.4.3.json new file mode 100644 index 000000000..bea45cf26 --- /dev/null +++ b/content/download/releases/processing-1303-4.4.3.json @@ -0,0 +1,87 @@ +{ + "name": "Processing 4.4.3", + "tagName": "processing-1303-4.4.3", + "isPrerelease": true, + "publishedAt": "2025-04-25T13:08:56Z", + "releaseAssets": { + "edges": [ + { + "node": { + "name": "processing-4.4.3-reference.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1303-4.4.3/processing-4.4.3-reference.zip", + "size": 107732880 + } + }, + { + "node": { + "name": "processing-4.4.3-windows-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1303-4.4.3/processing-4.4.3-windows-x64-portable.zip", + "size": 421243266 + } + }, + { + "node": { + "name": "processing-4.4.3-windows-x64.msi", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1303-4.4.3/processing-4.4.3-windows-x64.msi", + "size": 383082496 + } + }, + { + "node": { + "name": "processing-4.4.3-linux-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1303-4.4.3/processing-4.4.3-linux-aarch64-portable.zip", + "size": 434093527 + } + }, + { + "node": { + "name": "processing-4.4.3-linux-aarch64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1303-4.4.3/processing-4.4.3-linux-aarch64.snap", + "size": 431722496 + } + }, + { + "node": { + "name": "processing-4.4.3-linux-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1303-4.4.3/processing-4.4.3-linux-x64-portable.zip", + "size": 440189001 + } + }, + { + "node": { + "name": "processing-4.4.3-linux-x64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1303-4.4.3/processing-4.4.3-linux-x64.snap", + "size": 444461056 + } + }, + { + "node": { + "name": "processing-4.4.3-macos-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1303-4.4.3/processing-4.4.3-macos-aarch64-portable.zip", + "size": 427807926 + } + }, + { + "node": { + "name": "processing-4.4.3-macos-aarch64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1303-4.4.3/processing-4.4.3-macos-aarch64.dmg", + "size": 429567789 + } + }, + { + "node": { + "name": "processing-4.4.3-macos-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1303-4.4.3/processing-4.4.3-macos-x64-portable.zip", + "size": 439231821 + } + }, + { + "node": { + "name": "processing-4.4.3-macos-x64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1303-4.4.3/processing-4.4.3-macos-x64.dmg", + "size": 440903479 + } + } + ] + } +} \ No newline at end of file diff --git a/content/download/releases/processing-1304-4.4.4.json b/content/download/releases/processing-1304-4.4.4.json new file mode 100644 index 000000000..8e780eb2e --- /dev/null +++ b/content/download/releases/processing-1304-4.4.4.json @@ -0,0 +1,87 @@ +{ + "name": "Processing 4.4.4", + "tagName": "processing-1304-4.4.4", + "isPrerelease": false, + "publishedAt": "2025-05-16T08:47:36Z", + "releaseAssets": { + "edges": [ + { + "node": { + "name": "processing-4.4.4-windows-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1304-4.4.4/processing-4.4.4-windows-x64-portable.zip", + "size": 421241239 + } + }, + { + "node": { + "name": "processing-4.4.4-windows-x64.msi", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1304-4.4.4/processing-4.4.4-windows-x64.msi", + "size": 383086592 + } + }, + { + "node": { + "name": "processing-4.4.4-reference.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1304-4.4.4/processing-4.4.4-reference.zip", + "size": 107738143 + } + }, + { + "node": { + "name": "processing-4.4.4-linux-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1304-4.4.4/processing-4.4.4-linux-aarch64-portable.zip", + "size": 434091206 + } + }, + { + "node": { + "name": "processing-4.4.4-linux-aarch64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1304-4.4.4/processing-4.4.4-linux-aarch64.snap", + "size": 431702016 + } + }, + { + "node": { + "name": "processing-4.4.4-linux-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1304-4.4.4/processing-4.4.4-linux-x64-portable.zip", + "size": 440186243 + } + }, + { + "node": { + "name": "processing-4.4.4-linux-x64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1304-4.4.4/processing-4.4.4-linux-x64.snap", + "size": 444448768 + } + }, + { + "node": { + "name": "processing-4.4.4-macos-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1304-4.4.4/processing-4.4.4-macos-aarch64-portable.zip", + "size": 427811022 + } + }, + { + "node": { + "name": "processing-4.4.4-macos-aarch64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1304-4.4.4/processing-4.4.4-macos-aarch64.dmg", + "size": 429630102 + } + }, + { + "node": { + "name": "processing-4.4.4-macos-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1304-4.4.4/processing-4.4.4-macos-x64-portable.zip", + "size": 439228371 + } + }, + { + "node": { + "name": "processing-4.4.4-macos-x64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1304-4.4.4/processing-4.4.4-macos-x64.dmg", + "size": 440810493 + } + } + ] + } +} \ No newline at end of file diff --git a/content/download/releases/processing-1305-4.4.5.json b/content/download/releases/processing-1305-4.4.5.json new file mode 100644 index 000000000..638f52535 --- /dev/null +++ b/content/download/releases/processing-1305-4.4.5.json @@ -0,0 +1,87 @@ +{ + "name": "Processing 4.4.5", + "tagName": "processing-1305-4.4.5", + "isPrerelease": true, + "publishedAt": "2025-07-11T12:56:25Z", + "releaseAssets": { + "edges": [ + { + "node": { + "name": "processing-4.4.5-windows-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1305-4.4.5/processing-4.4.5-windows-x64-portable.zip", + "size": 421245296 + } + }, + { + "node": { + "name": "processing-4.4.5-windows-x64.msi", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1305-4.4.5/processing-4.4.5-windows-x64.msi", + "size": 383090688 + } + }, + { + "node": { + "name": "processing-4.4.5-reference.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1305-4.4.5/processing-4.4.5-reference.zip", + "size": 107784511 + } + }, + { + "node": { + "name": "processing-4.4.5-linux-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1305-4.4.5/processing-4.4.5-linux-x64-portable.zip", + "size": 440191699 + } + }, + { + "node": { + "name": "processing-4.4.5-linux-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1305-4.4.5/processing-4.4.5-linux-aarch64-portable.zip", + "size": 434095562 + } + }, + { + "node": { + "name": "processing-4.4.5-linux-x64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1305-4.4.5/processing-4.4.5-linux-x64.snap", + "size": 444452864 + } + }, + { + "node": { + "name": "processing-4.4.5-linux-aarch64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1305-4.4.5/processing-4.4.5-linux-aarch64.snap", + "size": 431706112 + } + }, + { + "node": { + "name": "processing-4.4.5-macos-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1305-4.4.5/processing-4.4.5-macos-aarch64-portable.zip", + "size": 427814058 + } + }, + { + "node": { + "name": "processing-4.4.5-macos-aarch64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1305-4.4.5/processing-4.4.5-macos-aarch64.dmg", + "size": 429610913 + } + }, + { + "node": { + "name": "processing-4.4.5-macos-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1305-4.4.5/processing-4.4.5-macos-x64-portable.zip", + "size": 439234457 + } + }, + { + "node": { + "name": "processing-4.4.5-macos-x64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1305-4.4.5/processing-4.4.5-macos-x64.dmg", + "size": 440693565 + } + } + ] + } +} \ No newline at end of file diff --git a/content/download/releases/processing-1306-4.4.6.json b/content/download/releases/processing-1306-4.4.6.json new file mode 100644 index 000000000..e5559412c --- /dev/null +++ b/content/download/releases/processing-1306-4.4.6.json @@ -0,0 +1,87 @@ +{ + "name": "Processing 4.4.6", + "tagName": "processing-1306-4.4.6", + "isPrerelease": false, + "publishedAt": "2025-08-14T15:04:41Z", + "releaseAssets": { + "edges": [ + { + "node": { + "name": "processing-4.4.6-windows-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1306-4.4.6/processing-4.4.6-windows-x64-portable.zip", + "size": 421308849 + } + }, + { + "node": { + "name": "processing-4.4.6-windows-x64.msi", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1306-4.4.6/processing-4.4.6-windows-x64.msi", + "size": 383156224 + } + }, + { + "node": { + "name": "processing-4.4.6-reference.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1306-4.4.6/processing-4.4.6-reference.zip", + "size": 107765294 + } + }, + { + "node": { + "name": "processing-4.4.6-linux-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1306-4.4.6/processing-4.4.6-linux-aarch64-portable.zip", + "size": 434158841 + } + }, + { + "node": { + "name": "processing-4.4.6-linux-aarch64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1306-4.4.6/processing-4.4.6-linux-aarch64.snap", + "size": 431734784 + } + }, + { + "node": { + "name": "processing-4.4.6-linux-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1306-4.4.6/processing-4.4.6-linux-x64-portable.zip", + "size": 440252506 + } + }, + { + "node": { + "name": "processing-4.4.6-linux-x64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1306-4.4.6/processing-4.4.6-linux-x64.snap", + "size": 444477440 + } + }, + { + "node": { + "name": "processing-4.4.6-macos-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1306-4.4.6/processing-4.4.6-macos-aarch64-portable.zip", + "size": 427876242 + } + }, + { + "node": { + "name": "processing-4.4.6-macos-aarch64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1306-4.4.6/processing-4.4.6-macos-aarch64.dmg", + "size": 429729956 + } + }, + { + "node": { + "name": "processing-4.4.6-macos-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1306-4.4.6/processing-4.4.6-macos-x64-portable.zip", + "size": 439299352 + } + }, + { + "node": { + "name": "processing-4.4.6-macos-x64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1306-4.4.6/processing-4.4.6-macos-x64.dmg", + "size": 440680024 + } + } + ] + } +} \ No newline at end of file diff --git a/content/download/releases/processing-1307-4.4.7.json b/content/download/releases/processing-1307-4.4.7.json new file mode 100644 index 000000000..f59469da6 --- /dev/null +++ b/content/download/releases/processing-1307-4.4.7.json @@ -0,0 +1,87 @@ +{ + "name": "Processing 4.4.7", + "tagName": "processing-1307-4.4.7", + "isPrerelease": false, + "publishedAt": "2025-09-04T14:21:04Z", + "releaseAssets": { + "edges": [ + { + "node": { + "name": "processing-4.4.7-windows-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1307-4.4.7/processing-4.4.7-windows-x64-portable.zip", + "size": 421358891 + } + }, + { + "node": { + "name": "processing-4.4.7-windows-x64.msi", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1307-4.4.7/processing-4.4.7-windows-x64.msi", + "size": 383184896 + } + }, + { + "node": { + "name": "processing-4.4.7-reference.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1307-4.4.7/processing-4.4.7-reference.zip", + "size": 107773105 + } + }, + { + "node": { + "name": "processing-4.4.7-linux-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1307-4.4.7/processing-4.4.7-linux-aarch64-portable.zip", + "size": 434217481 + } + }, + { + "node": { + "name": "processing-4.4.7-linux-aarch64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1307-4.4.7/processing-4.4.7-linux-aarch64.snap", + "size": 431775744 + } + }, + { + "node": { + "name": "processing-4.4.7-linux-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1307-4.4.7/processing-4.4.7-linux-x64-portable.zip", + "size": 440313416 + } + }, + { + "node": { + "name": "processing-4.4.7-linux-x64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1307-4.4.7/processing-4.4.7-linux-x64.snap", + "size": 444526592 + } + }, + { + "node": { + "name": "processing-4.4.7-macos-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1307-4.4.7/processing-4.4.7-macos-aarch64-portable.zip", + "size": 427938616 + } + }, + { + "node": { + "name": "processing-4.4.7-macos-aarch64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1307-4.4.7/processing-4.4.7-macos-aarch64.dmg", + "size": 429642328 + } + }, + { + "node": { + "name": "processing-4.4.7-macos-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1307-4.4.7/processing-4.4.7-macos-x64-portable.zip", + "size": 439359174 + } + }, + { + "node": { + "name": "processing-4.4.7-macos-x64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1307-4.4.7/processing-4.4.7-macos-x64.dmg", + "size": 440966116 + } + } + ] + } +} \ No newline at end of file diff --git a/content/download/releases/processing-1308-4.4.8.json b/content/download/releases/processing-1308-4.4.8.json new file mode 100644 index 000000000..291874ccd --- /dev/null +++ b/content/download/releases/processing-1308-4.4.8.json @@ -0,0 +1,87 @@ +{ + "name": "Processing 4.4.8", + "tagName": "processing-1308-4.4.8", + "isPrerelease": false, + "publishedAt": "2025-10-07T00:54:57Z", + "releaseAssets": { + "edges": [ + { + "node": { + "name": "processing-4.4.8-reference.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1308-4.4.8/processing-4.4.8-reference.zip", + "size": 107783194 + } + }, + { + "node": { + "name": "processing-4.4.8-linux-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1308-4.4.8/processing-4.4.8-linux-aarch64-portable.zip", + "size": 445524998 + } + }, + { + "node": { + "name": "processing-4.4.8-linux-aarch64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1308-4.4.8/processing-4.4.8-linux-aarch64.snap", + "size": 435384320 + } + }, + { + "node": { + "name": "processing-4.4.8-linux-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1308-4.4.8/processing-4.4.8-linux-x64-portable.zip", + "size": 451623733 + } + }, + { + "node": { + "name": "processing-4.4.8-linux-x64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1308-4.4.8/processing-4.4.8-linux-x64.snap", + "size": 448143360 + } + }, + { + "node": { + "name": "processing-4.4.8-macos-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1308-4.4.8/processing-4.4.8-macos-aarch64-portable.zip", + "size": 439299850 + } + }, + { + "node": { + "name": "processing-4.4.8-macos-aarch64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1308-4.4.8/processing-4.4.8-macos-aarch64.dmg", + "size": 441009571 + } + }, + { + "node": { + "name": "processing-4.4.8-macos-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1308-4.4.8/processing-4.4.8-macos-x64-portable.zip", + "size": 450723966 + } + }, + { + "node": { + "name": "processing-4.4.8-macos-x64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1308-4.4.8/processing-4.4.8-macos-x64.dmg", + "size": 452242936 + } + }, + { + "node": { + "name": "processing-4.4.8-windows-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1308-4.4.8/processing-4.4.8-windows-x64-portable.zip", + "size": 432669513 + } + }, + { + "node": { + "name": "processing-4.4.8-windows-x64.msi", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1308-4.4.8/processing-4.4.8-windows-x64.msi", + "size": 389308416 + } + } + ] + } +} \ No newline at end of file diff --git a/content/download/releases/processing-1309-4.4.9.json b/content/download/releases/processing-1309-4.4.9.json new file mode 100644 index 000000000..58a81edcd --- /dev/null +++ b/content/download/releases/processing-1309-4.4.9.json @@ -0,0 +1,87 @@ +{ + "name": "Processing 4.4.9", + "tagName": "processing-1309-4.4.9", + "isPrerelease": true, + "publishedAt": "2025-10-14T13:00:13Z", + "releaseAssets": { + "edges": [ + { + "node": { + "name": "processing-4.4.9-reference.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1309-4.4.9/processing-4.4.9-reference.zip", + "size": 107786560 + } + }, + { + "node": { + "name": "processing-4.4.9-windows-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1309-4.4.9/processing-4.4.9-windows-x64-portable.zip", + "size": 432674392 + } + }, + { + "node": { + "name": "processing-4.4.9-windows-x64.msi", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1309-4.4.9/processing-4.4.9-windows-x64.msi", + "size": 389316608 + } + }, + { + "node": { + "name": "processing-4.4.9-linux-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1309-4.4.9/processing-4.4.9-linux-aarch64-portable.zip", + "size": 445529938 + } + }, + { + "node": { + "name": "processing-4.4.9-linux-aarch64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1309-4.4.9/processing-4.4.9-linux-aarch64.snap", + "size": 435388416 + } + }, + { + "node": { + "name": "processing-4.4.9-linux-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1309-4.4.9/processing-4.4.9-linux-x64-portable.zip", + "size": 451629142 + } + }, + { + "node": { + "name": "processing-4.4.9-linux-x64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1309-4.4.9/processing-4.4.9-linux-x64.snap", + "size": 448147456 + } + }, + { + "node": { + "name": "processing-4.4.9-macos-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1309-4.4.9/processing-4.4.9-macos-aarch64-portable.zip", + "size": 439308931 + } + }, + { + "node": { + "name": "processing-4.4.9-macos-aarch64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1309-4.4.9/processing-4.4.9-macos-aarch64.dmg", + "size": 441106753 + } + }, + { + "node": { + "name": "processing-4.4.9-macos-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1309-4.4.9/processing-4.4.9-macos-x64-portable.zip", + "size": 450726304 + } + }, + { + "node": { + "name": "processing-4.4.9-macos-x64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1309-4.4.9/processing-4.4.9-macos-x64.dmg", + "size": 452139785 + } + } + ] + } +} \ No newline at end of file diff --git a/content/download/releases/processing-1310-4.4.10.json b/content/download/releases/processing-1310-4.4.10.json new file mode 100644 index 000000000..47e64e8f6 --- /dev/null +++ b/content/download/releases/processing-1310-4.4.10.json @@ -0,0 +1,87 @@ +{ + "name": "Processing 4.4.10", + "tagName": "processing-1310-4.4.10", + "isPrerelease": false, + "publishedAt": "2025-10-14T14:41:33Z", + "releaseAssets": { + "edges": [ + { + "node": { + "name": "processing-4.4.10-windows-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1310-4.4.10/processing-4.4.10-windows-x64-portable.zip", + "size": 432674063 + } + }, + { + "node": { + "name": "processing-4.4.10-windows-x64.msi", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1310-4.4.10/processing-4.4.10-windows-x64.msi", + "size": 389312512 + } + }, + { + "node": { + "name": "processing-4.4.10-reference.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1310-4.4.10/processing-4.4.10-reference.zip", + "size": 107786817 + } + }, + { + "node": { + "name": "processing-4.4.10-linux-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1310-4.4.10/processing-4.4.10-linux-aarch64-portable.zip", + "size": 445529971 + } + }, + { + "node": { + "name": "processing-4.4.10-linux-aarch64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1310-4.4.10/processing-4.4.10-linux-aarch64.snap", + "size": 435388416 + } + }, + { + "node": { + "name": "processing-4.4.10-linux-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1310-4.4.10/processing-4.4.10-linux-x64-portable.zip", + "size": 451628842 + } + }, + { + "node": { + "name": "processing-4.4.10-linux-x64.snap", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1310-4.4.10/processing-4.4.10-linux-x64.snap", + "size": 448147456 + } + }, + { + "node": { + "name": "processing-4.4.10-macos-aarch64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1310-4.4.10/processing-4.4.10-macos-aarch64-portable.zip", + "size": 439306293 + } + }, + { + "node": { + "name": "processing-4.4.10-macos-aarch64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1310-4.4.10/processing-4.4.10-macos-aarch64.dmg", + "size": 441086793 + } + }, + { + "node": { + "name": "processing-4.4.10-macos-x64-portable.zip", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1310-4.4.10/processing-4.4.10-macos-x64-portable.zip", + "size": 450724853 + } + }, + { + "node": { + "name": "processing-4.4.10-macos-x64.dmg", + "downloadUrl": "https://github.com/processing/processing4/releases/download/processing-1310-4.4.10/processing-4.4.10-macos-x64.dmg", + "size": 452204421 + } + } + ] + } +} \ No newline at end of file diff --git a/content/download/selected.json b/content/download/selected.json index 616a66c42..37d06776e 100644 --- a/content/download/selected.json +++ b/content/download/selected.json @@ -1,8 +1,11 @@ { "selectedReleases": [ - "processing-1290-4.1.2", + "processing-1.5.1", + "processing-0225-2.1.2", "processing-0270-3.5.4", - "processing-0227-2.2.1" + "processing-1310-4.4.10" ], - "selectedPreReleases": [""] -} + "selectedPreReleases": [ + "" + ] +} \ No newline at end of file diff --git a/content/examples/Basics/Color/ColorVariables/liveSketch.js b/content/examples/Basics/Color/ColorVariables/liveSketch.js index c4d04a5bc..59e6f1e37 100644 --- a/content/examples/Basics/Color/ColorVariables/liveSketch.js +++ b/content/examples/Basics/Color/ColorVariables/liveSketch.js @@ -42,5 +42,9 @@ function runLiveSketch(s) { s.pop(); s.noLoop(); + + s.describe( + 'There are two groups of squares. The first group contains three squares of varying sizes one above the other. The color of the smallest square is orange, the color of the middle square is gold, and the color of the biggest square is brown. On the right of the first group is the second set, which is similar to the first. The only difference here is the color of the squares; the smallest square is gold, the middle square is brown, and the biggest square is orange.' + ); }; } diff --git a/content/examples/Basics/Color/Saturation/liveSketch.js b/content/examples/Basics/Color/Saturation/liveSketch.js index fd8006781..23e332cf7 100644 --- a/content/examples/Basics/Color/Saturation/liveSketch.js +++ b/content/examples/Basics/Color/Saturation/liveSketch.js @@ -15,6 +15,9 @@ function runLiveSketch(s) { s.createCanvas(640, 360); s.colorMode(s.HSB, s.width, s.height, 100); s.noStroke(); + s.describe( + 'There is a canvas with a series of vertical bars. As the mouse moves over each bar, the saturation of the color changes. The bar is determined by the x-coordinate of the mouse and the saturation of the bar is determined by the y-coordinate of the mouse. As the move mouse up in the bar, the saturation increases. As the mouse moves down in the bar, the saturation decreases.' + ); }; s.draw = () => { diff --git a/content/examples/Basics/Control/Conditionals1/Conditionals1.pde b/content/examples/Basics/Control/Conditionals1/Conditionals1.pde index ae83fa3b7..fd969b483 100644 --- a/content/examples/Basics/Control/Conditionals1/Conditionals1.pde +++ b/content/examples/Basics/Control/Conditionals1/Conditionals1.pde @@ -4,7 +4,7 @@ * Conditions are like questions. * They allow a program to decide to take one action if * the answer to a question is "true" or to do another action - * if the answer to the question is "false."
+ * if the answer to the question is "false." * The questions asked within a program are always logical * or relational statements. For example, if the variable 'i' is * equal to zero then draw a line. diff --git a/content/examples/Basics/Data/CharactersStrings/CharactersStrings.pde b/content/examples/Basics/Data/CharactersStrings/CharactersStrings.pde index 3be296d72..6f03752d3 100644 --- a/content/examples/Basics/Data/CharactersStrings/CharactersStrings.pde +++ b/content/examples/Basics/Data/CharactersStrings/CharactersStrings.pde @@ -4,13 +4,13 @@ * The character datatype, abbreviated as char, stores letters and * symbols in the Unicode format, a coding system developed to support * a variety of world languages. Characters are distinguished from other - * symbols by putting them between single quotes ('P').
- *
+ * symbols by putting them between single quotes ('P'). + * * A string is a sequence of characters. A string is noted by surrounding * a group of letters with double quotes ("Processing"). * Chars and strings are most often used with the keyboard methods, - * to display text to the screen, and to load images or files.
- *
+ * to display text to the screen, and to load images or files. + * * The String datatype must be capitalized because it is a complex datatype. * A String is actually a class with its own methods, some of which are * featured below. diff --git a/content/examples/Basics/Data/CharactersStrings/liveSketch.js b/content/examples/Basics/Data/CharactersStrings/liveSketch.js index a7e05f608..72176736a 100644 --- a/content/examples/Basics/Data/CharactersStrings/liveSketch.js +++ b/content/examples/Basics/Data/CharactersStrings/liveSketch.js @@ -22,14 +22,14 @@ function runLiveSketch(s) { s.setup = () => { s.createCanvas(640, 360); - // Create the font s.textFont('Source Code Pro', 36); + s.textWrap(s.CHAR); // Added text wrap modification }; s.draw = () => { s.background(0); // Set background to black - // Draw the letter to the center of the screen + // Draw the letter and status text s.textSize(14); s.fill(255); s.noStroke(); @@ -42,11 +42,10 @@ function runLiveSketch(s) { }; s.keyPressed = () => { - // The variable "key" always contains the value - // of the most recent key pressed. if ((s.key >= 'A' && s.key <= 'z') || s.key == ' ') { letter = s.key; words = words + s.key; } }; + } diff --git a/content/examples/Basics/Image/Alphamask/data/mask.jpg b/content/examples/Basics/Image/Alphamask/data/mask.jpg new file mode 100644 index 000000000..ebf9e66b0 Binary files /dev/null and b/content/examples/Basics/Image/Alphamask/data/mask.jpg differ diff --git a/content/examples/Basics/Image/Alphamask/data/moonwalk.jpg b/content/examples/Basics/Image/Alphamask/data/moonwalk.jpg new file mode 100644 index 000000000..793781a3b Binary files /dev/null and b/content/examples/Basics/Image/Alphamask/data/moonwalk.jpg differ diff --git a/content/examples/Basics/Lights/Directional/liveSketch.js b/content/examples/Basics/Lights/Directional/liveSketch.js index d71b6df2e..4892e0330 100644 --- a/content/examples/Basics/Lights/Directional/liveSketch.js +++ b/content/examples/Basics/Lights/Directional/liveSketch.js @@ -1,20 +1,23 @@ function runLiveSketch(s) { - s.setup = () => { s.createCanvas(640, 360, s.WEBGL); s.noStroke(); s.fill(204); + s.describe( + 'there are two dark spheres side by side, the cursor works like a light source, when mouse moves the direction of light changes and reveals some part of spheres.' + ); }; s.draw = () => { - s.noStroke(); - s.background(0); + s.noStroke(); + s.background(0); let dirY = (s.mouseY / s.height - 0.5) * 2; let dirX = (s.mouseX / s.width - 0.5) * 2; - s.directionalLight(204, 204, 204, -dirX, -dirY, -1); - s.translate(- 100, 0, 0); - s.sphere(80); - s.translate(200, 0, 0); - s.sphere(80); + s.directionalLight(204, 204, 204, -dirX, -dirY, -1); + s.translate(-100, 0, 0); + s.sphere(80); + s.translate(200, 0, 0); + s.sphere(80); + }; } diff --git a/content/examples/Basics/Web/LoadingImages/LoadingImages.pde b/content/examples/Basics/Web/LoadingImages/LoadingImages.pde index 3e5d62bae..8f30c81bc 100644 --- a/content/examples/Basics/Web/LoadingImages/LoadingImages.pde +++ b/content/examples/Basics/Web/LoadingImages/LoadingImages.pde @@ -8,7 +8,7 @@ PImage img; void setup() { size(640, 360); - img = loadImage("https://processingfoundation.org/content/1-home/processing-web.png"); + img = loadImage("https://processing.org/img/processing-web.png"); noLoop(); } diff --git a/content/examples/Basics/Web/LoadingImages/liveSketch.js b/content/examples/Basics/Web/LoadingImages/liveSketch.js index a67bc472c..04e3610ec 100644 --- a/content/examples/Basics/Web/LoadingImages/liveSketch.js +++ b/content/examples/Basics/Web/LoadingImages/liveSketch.js @@ -12,7 +12,7 @@ function runLiveSketch(s) { s.setup = () => { s.createCanvas(640, 360); - img = s.createImg('https://processingfoundation.org/content/1-home/processing-web.png', loaded); + img = s.createImg('https://processing.org/img/processing-web.png', loaded); }; function loaded() { diff --git a/content/pages/environment/index.mdx b/content/pages/environment/index.mdx index a26246c85..5ac8d0938 100644 --- a/content/pages/environment/index.mdx +++ b/content/pages/environment/index.mdx @@ -23,11 +23,11 @@ Processing has different _programming modes_ to make it possible to deploy sketc ## Processing Development Environment (PDE) -The Processing Development Environment (PDE) consists of a simple text editor for writing code, a message area, a text console, tabs for managing files, a toolbar with buttons for common actions, and a series of menus. The menus options change from mode to mode. The default Java mode is documented here. +The Processing Development Environment (PDE) consists of a simple text editor for writing code, a message area, a text console, tabs for managing files, a toolbar with buttons for common actions, and a series of menus. The menu options change from mode to mode. The default Java mode is documented here. ![IDE Screenshot](./ide.png) -Programs written using Processing are called sketches. These sketches are written in the text editor. It has features for cutting/pasting and for searching/replacing text. The message area gives feedback while saving and exporting and also displays errors. The console displays text output by Processing sketches including complete error messages and text output from sketches with the `print()` and `println()` functions. (Note that the console works well for occasional messages, but is not intended for high-speed, real-time output.) +Programs written using Processing are called sketches. These sketches are written in the text editor. It has features for cutting/pasting and searching/replacing text. The message area gives feedback while saving and exporting and also displays errors. The console displays text output by Processing sketches including complete error messages and text output from sketches with the `print()` and `println()` functions. (Note that the console works well for occasional messages, but is not intended for high-speed, real-time output.) The buttons on the toolbar can run and stop programs, @@ -56,14 +56,14 @@ The buttons on the toolbar can run and stop programs,
Terminates a running sketch.
-Additional commands are found within the six menus: File, Edit, Sketch, Debug, Tools, Help. The menus are context sensitive which means only those items relevant to the work currently being carried out are available. +Additional commands are found within the six menus: File, Edit, Sketch, Debug, Tools, Help. The menus are context-sensitive which means only those items relevant to the work currently being carried out are available. ### File
New
- Creates a new sketch in a new window, named as the current date is the + Creates a new sketch in a new window, named as the current date in the format `sketch_YYMMDDa`.
Open...
@@ -73,7 +73,7 @@ Additional commands are found within the six menus: File, Edit, Sketch, Debug, T
Sketchbook...
Open a new window to show the list of sketches in the sketchbook.
Examples...
-
Open a new window to show the list of the examples.
+
Open a new window to show a list of examples.
Close
Close the sketch in the frontmost window. If this is the last sketch that's @@ -81,7 +81,7 @@ Additional commands are found within the six menus: File, Edit, Sketch, Debug, T prompt, use Quit instead of Close when you want to exit the application.
Save
-
Saves the open sketch in it's current state.
+
Saves the open sketch in its current state.
Save As...
Saves the currently open sketch, with the option of giving it a different @@ -99,12 +99,12 @@ Additional commands are found within the six menus: File, Edit, Sketch, Debug, T
Preferences...
Change some of the ways Processing works. (This item is located in the - Processing menu on Mac OS X.) + Processing menu on macOS.)
Quit
Exits the Processing Environment and closes all Processing windows. (This - item is located in the Processing menu on Mac OS X.) + item is located in the Processing menu on macOS.)
@@ -155,22 +155,22 @@ Additional commands are found within the six menus: File, Edit, Sketch, Debug, T uncomments it.
Increase Indent
-
Indents the selected text two spaces.
+
Indents the selected text by two spaces.
Decrease Indent (Ctrl+[)
If the text is indented, removes two spaces from the indent.
Find...
- Finds an occurence of a text string within the file open in the text editor + Finds an occurrence of a text string within the file open in the text editor and gives the option to replace it with a different text.
Find Next
- Finds the next occurence of a text string within the file open in the text + Finds the next occurrence of a text string within the file open in the text editor.
Find Previous
- Finds the previous occurence of a text string within the file open in the + Finds the previous occurrence of a text string within the file open in the text editor.
Use Selection for Find
@@ -282,7 +282,7 @@ Additional commands are found within the six menus: File, Edit, Sketch, Debug, T
Theme Selector
Interface for selecting themes for Processing, with options to read about - how to create your own themes as well as save them to sketchbook for editing. + how to create your own themes as well as save them to a sketchbook for editing.
Movie Maker
@@ -341,7 +341,7 @@ Additional commands are found within the six menus: File, Edit, Sketch, Debug, T ## Preferences -The Processing Development Environment (PDE) is highly configurable. The most common preferences can be modified in the Preferences window, located in the File menu on Windows and Linux and in the Processing menu on Mac Os X. The full list of preferences are stored in the "preferences.txt" file. This file can be opened and edited directly only when Processing is not running. You can find the location of this file on your computer by reading the bottom-left corner of the Preferences window. +The Processing Development Environment (PDE) is highly configurable. The most common preferences can be modified in the Preferences window, located in the File menu on Windows and Linux and the Processing menu on macOS. The full list of preferences is stored in the "preferences.txt" file. This file can be opened and edited directly only when Processing is not running. You can find the location of this file on your computer by reading the bottom-left corner of the Preferences window.
Sketchbook location
@@ -420,7 +420,7 @@ The Processing Development Environment (PDE) is highly configurable. The most co All Processing projects are called sketches. Each sketch has its own folder. The main file for each sketch has the same name as the folder and is found inside. For example, if the sketch is named "Sketch_123", the folder for the sketch will be called "Sketch_123" and the main file will be called "Sketch_123.pde". The PDE file extension is an acronym for the Processing Development Environment -Processing sketches can be stored anywhere on your computer, but by default they are stored in the sketchbook, which will be in different places on your computer or network depending if you use PC, Mac, or Linux and how the preferences are set. To locate this folder, select the "Preferences" option from the File menu (or from the "Processing" menu on the Mac) and look for the"Sketchbook location." +Processing sketches can be stored anywhere on your computer, but by default, they are stored in the sketchbook, which will be in different places on your computer or network depending if you use PC, Mac, or Linux and how the preferences are set. To locate this folder, select the "Preferences" option from the File menu (or from the "Processing" menu on the Mac) and look for the"Sketchbook location." A sketch folder sometimes contains other folders for media files and other code. When a font or image is added to a sketch by selecting "Add File..." from the Sketch menu, a "data" folder is created. Files may also be added to your Processing sketch by dragging them into the text editor. Image and sound files dragged into the application window will automatically be added to the current sketch's "data" folder. All images, fonts, sounds, and other data files loaded in the sketch must be in this folder. @@ -476,7 +476,7 @@ The arrow button to the right of the tabs in the Processing Development Environm _Advanced_ -When a program with multiple tabs is run, the code is grouped together and the classes in other tabs become inner classes. Because they're inner classes, they cannot have static variables. Simply place the "static" variable outside the class itself to do the same thing (it need not be explicitly named "static" once you list it in this manner). If you don't want code to be an inner class, you can also create a tab with a ".java" suffix, which means it will be interpreted as straight java code. It is also not possible to use static classes in separate tabs. If you do this, however, you'll need to pass the PApplet object to that object in that tab in order to get PApplet functions like `line()`, `loadStrings()` or `saveFrame()` to work. +When a program with multiple tabs is run, the code is grouped together and the classes in other tabs become inner classes. Because they're inner classes, they cannot have static variables. Simply place the "static" variable outside the class itself to do the same thing (it need not be explicitly named "static" once you list it in this manner). If you don't want code to be an inner class, you can also create a tab with a ".java" suffix, which means it will be interpreted as straight java code. It is also not possible to use static classes in separate tabs. If you do this, however, you'll need to pass the PApplet object to that object in that tab in order to get PApplet functions like `line()`, `loadStrings()`, or `saveFrame()` to work. @@ -565,3 +565,27 @@ Add contributed Examples by first opening the "Examples..." submenu from the Fil ## Export The [Export information and Tips](https://github.com/processing/processing/wiki/Export-Info-and-Tips) page on the Processing Wiki covers the details of exporting Applications from Java mode. + +## Command Line Interface (CLI) + +Processing includes a Command Line Interface (CLI) to run sketches from the terminal. This is helpful for automation, testing, and headless setups. + +Make sure Processing is installed, then run the help command to see all available options and examples. + +*Windows* +``` +processing --help | more +``` + +*Linux* +``` +processing --help +``` + +*macOS* +``` +cd /Applications/Processing.app/Contents/MacOS +./Processing --help +``` + +_**Note:** On macOS, the executable lives inside the `.app` bundle, so that's why there is a command to navigate to it's folder first. On Windows and Linux, Processing is typically added to your PATH by default, so no navigation is needed._ diff --git a/content/pages/libraries/svg/index.mdx b/content/pages/libraries/svg/index.mdx index 9548b3efb..12d7b59fd 100644 --- a/content/pages/libraries/svg/index.mdx +++ b/content/pages/libraries/svg/index.mdx @@ -82,7 +82,7 @@ void draw() { } } -// Use a keypress so thousands of files aren't created +// Use a mousepress so thousands of files aren't created void mousePressed() { record = true; } diff --git a/content/pages/overview/index.es.mdx b/content/pages/overview/index.es.mdx index e15886bdb..f93131dbc 100644 --- a/content/pages/overview/index.es.mdx +++ b/content/pages/overview/index.es.mdx @@ -32,7 +32,9 @@ El principal cargo de la Fundación es desarrollar y distribuir el software Proc ## Historia Processing fue iniciado por Ben Fry y Casey Reas en la primavera del 2001, mientras ambos eran estudiantes de posgrado en el MIT Media Lab dentro del grupo de investigación de John Maeda (John Maeda's Aesthetics and Computation research group). El desarrollo continuó durante su tiempo libre mientras Casey continuaba con su carrera como artista y maestro y Ben perseguía un PhD y fundaba Fathom Information Design. Muchas de las ideas en Processing se remontan al taller de Lenguaje Visual de Muriel Cooper, y creció directamente del projecto de Maeda, Design by Number, desarrollado por el Media Lab y lanzado en 1999. Los proyectos de Wiring y Arduino, en cambio, crecieron afuera de Processing mientras Casey estaba enseñando en el Interaction Design Institute Ivrea, en Italia. - Para más información, por favor escribe a foundation@processing.org + Para más información, por favor escribe a hello@processing.org ## Gracias. YourKit apoya a Processing al donar su Profiler de Java con todas sus funciones. YourKit, LLC es el creador de herramientas para hacer profiling de aplicaciones en Java y .NET: [ Java Profiler de YourKit](https://www.yourkit.com/java/profiler/index.jsp), [.NET Profiler de YourKit ](https://www.yourkit.com/.net/profiler/index.jsp). + +Netlify apoya a Processing al donar su hosting y servicios de CI/CD. Netlify es una plataforma de hosting y automatización de CI/CD para aplicaciones web modernas: [Netlify](https://www.netlify.com/). \ No newline at end of file diff --git a/content/pages/overview/index.mdx b/content/pages/overview/index.mdx index 1bb04c2c3..9d549d450 100644 --- a/content/pages/overview/index.mdx +++ b/content/pages/overview/index.mdx @@ -24,3 +24,5 @@ When we started Processing in spring 2001 we were both graduate students at the ## Thank you. YourKit supports Processing by donating its full-featured Java Profiler. YourKit, LLC is the creator of tools for profiling Java and .NET applications: [YourKit Java Profiler](https://www.yourkit.com/java/profiler/index.jsp), [YourKit .NET Profiler](https://www.yourkit.com/.net/profiler/index.jsp). + +Netlify supports Processing by donating its hosting and CI/CD services. Netlify is a hosting and CI/CD automation platform for modern web applications: [Netlify](https://www.netlify.com/). \ No newline at end of file diff --git a/content/pages/people/index.es.mdx b/content/pages/people/index.es.mdx index 3136572ae..f31fa9504 100644 --- a/content/pages/people/index.es.mdx +++ b/content/pages/people/index.es.mdx @@ -5,17 +5,19 @@ title: 'People' ## Lideres de Proyecto -[Ben Fry](https://benfry.com/) y [Casey Reas](http://reas.com/) iniciaron Processing en la primavera del 2001 y continúan trabajando en él obsesivamente. En el 2012, ellos iniciaron la Fundación Processing junto con [Dan Shiffman](https://shiffman.net/), quién tras esto se unió formalmente como tercer líder de proyecto. +[Ben Fry](https://benfry.com/) y [Casey Reas](http://reas.com/) iniciaron Processing en la primavera de 2001 y trabajaron obsesivamente en el proyecto durante más de veinte años. En 2012, establecieron la Fundación Processing junto con [Dan Shiffman](https://shiffman.net/), quien se unió formalmente como el tercer líder de proyecto. En agosto de 2022, [Raphaël de Courville](https://twitter.com/sableraph) se unió a tiempo completo como Líder de la Comunidad Processing, bajo la tutoría de Casey Reas. En 2023, Ben, Casey y Dan se retiraron oficialmente de sus roles activos como líderes de proyecto, marcando el inicio de una nueva era para Processing bajo la dirección de la Fundación Processing. -## Desarrolladores +## Principales Colaboradores - [Andres Colubri](https://andrescolubri.net/) (Boston), OpenGL / Video -- [Elie Zananiri](http://prisonerjohn.com/) (New York), Contributed Libraries / Tools - [Samuel Pottinger](https://github.com/sampottinger) (San Francisco), Processing Core +- [Raphaël de Courville](https://twitter.com/sableraph) (Berlin), Processing Website +- [Stef Tervelde](https://github.com/stefterv) (Berlin), Infrastructure and Developer Experience +- [Kevin Stadler](https://github.com/kevinstadler) (Vienna), Processing Sound ## Bibliotecas, Herramientas -El núcleo del software Processing es potenciado por [bibliotecas](https://www.processing.org/es/reference/libraries/) y [herramientas](https://www.processing.org/reference/tools/) que son contribución de la comunidad. Estas creativas extensiones proveen de un brillante futuro al proyecto. Tenemos una lista online de las contribuciones en Bibliotecas y Herramientas. Estas contribuciones no pueden ser desestimadas. Por ejemplo, ve cómo Karsten Schmidt (Londres) ha transformado Processing a través de la biblioteca toxiclibs y cómo Damien Di Fede (Austin) ha extendido el proyecto dentro de la programación de sonido a tráves de su biblioteca minim. +El núcleo del software Processing es potenciado por [bibliotecas](https://www.processing.org/reference/libraries/), [modos](https://processing.org/environment/#adding-libraries-tools-and-modes) y [herramientas](https://processing.org/reference/tools/) que son contribución de la comunidad. Estas contribuciones expanden las capacidades de Processing. Por ejemplo, observa cómo Jeongin Lee agregó aprendizaje automático a través de su biblioteca [Creative Machine](https://jjeongin.github.io/creative-machine/). ## Diseño y Sitio Web @@ -50,7 +52,7 @@ El núcleo del software Processing es potenciado por [bibliotecas](https://www.p - Harshani Nawarathna, Entorno de Desarrollo Processing (Processing Development Environment) (Verano 2011) - Cindy Chi, Edición de Referencias (Verano 2011) - Jonathan Feinberg, Parsing & Android Hacking (Primavera 2011) -- Chris Lonnen, Entorno de Desarrollo Processing (Processing Development Environment) (Verano 2011) +- Lonnen, Entorno de Desarrollo Processing (Processing Development Environment) (Verano 2010 - Invierno 2010) - Eric Jordan, Arma de Gráficos (2007 - 2009) - Tom Carden, Director Processing Hacks (Verano 2005 - Otoño 2008) - Lenny Burdette, Renovación de Sitio Web (Verano 2005 - Invierno 2006) @@ -82,4 +84,5 @@ El núcleo del software Processing es potenciado por [bibliotecas](https://www.p - Alessandro Capozzo, Italiano - Burak Arikan, Turco -Extendemos un agradecimiento especial a Sami Arola por escribir la base del P3d original, y a Simon Greenwold por incorporar luces y cámara. Tom Carden contribuyó con gran energía en la co-creación de Processing Hacks y el mantenimiento de los Blogs Processing. Andreas Schlegel hizo un estupendo trabajo a lo largo de tres años organizando la contribución de bibliotecas y construyendo plantillas y documentación. +## Agradecimientos Especiales +Extendemos un agradecimiento especial a Sami Arola por escribir la base del P3d original, y a Simon Greenwold por incorporar luces y cámara. Tom Carden contribuyó con gran energía en la co-creación de Processing Hacks y el mantenimiento de los Blogs Processing. Andreas Schlegel hizo un estupendo trabajo a lo largo de tres años organizando la contribución de bibliotecas y construyendo plantillas y documentación. Gracias a Elie Zananiri, quien sirvió incansablemente como el Bibliotecario de Processing desde 2011 hasta 2024. diff --git a/content/pages/people/index.mdx b/content/pages/people/index.mdx index 59339b2ed..d9aaf9c74 100644 --- a/content/pages/people/index.mdx +++ b/content/pages/people/index.mdx @@ -5,17 +5,19 @@ title: 'People' ## Project Leads -[Ben Fry](https://benfry.com/) and [Casey Reas](http://reas.com/) started Processing in Spring 2001 and continue to obsessively work on it. In 2012, they started the Processing Foundation along with [Dan Shiffman](https://shiffman.net/), who formally joined as a third project lead. +[Ben Fry](https://benfry.com/) and [Casey Reas](http://reas.com/) started Processing in Spring 2001 and obsessively worked on it for over twenty years. In 2012, they established the Processing Foundation along with [Dan Shiffman](https://shiffman.net/), who formally joined as the third project lead. In August 2022, [Raphaël de Courville](https://twitter.com/sableraph) joined full-time as Processing Community Lead, under Casey Reas’ mentorship. In 2023, Ben, Casey, and Dan officially stepped down from their active roles as project leads, marking the beginning of a new era for Processing under the stewardship of the Processing Foundation. -## Developers +## Key Contributors - [Andres Colubri](https://andrescolubri.net/) (Boston), OpenGL / Video -- [Elie Zananiri](http://prisonerjohn.com/) (New York), Contributed Libraries / Tools - [Samuel Pottinger](https://github.com/sampottinger) (San Francisco), Processing Core +- [Raphaël de Courville](https://twitter.com/sableraph) (Berlin), Processing Website +- [Stef Tervelde](https://github.com/stefterv) (Berlin), Infrastructure and Developer Experience +- [Kevin Stadler](https://github.com/kevinstadler) (Vienna), Processing Sound ## Libraries, Tools -The core Processing software is augmented by [libraries](https://www.processing.org/reference/libraries/) and [tools](https://www.processing.org/reference/tools/) contributed through the community. These inventive extensions are a bright future for the project. We have a list of Contributed Libraries and Contributed Tools posted online. These contributions can't be underestimated. For example, see how Karsten Schmidt (London) has transformed Processing through the toxiclibs library and how Damien Di Fede (Austin) has extended the project into programming sound through his minim library. +The core Processing software is augmented by [libraries](https://www.processing.org/reference/libraries/), [modes](https://processing.org/environment/#adding-libraries-tools-and-modes), and [tools](https://processing.org/reference/tools/) contributed by the community. These contributions expand Processing's capabilities. For example, see how Jeongin Lee added machine learning via her [Creative Machine](https://jjeongin.github.io/creative-machine/) library. ## Website and Design @@ -36,6 +38,7 @@ The core Processing software is augmented by [libraries](https://www.processing. ## Processing People Alumni +- Elie Zananiri, Contributed Libraries / Tools - Jakub Valtar, Processing Core - Scott Garner, Hello Processing Website - Scott Murray, Website / Reference / UI @@ -44,13 +47,14 @@ The core Processing software is augmented by [libraries](https://www.processing. - Jamie Kosoy, Website - Manindra Moharana, PDE / Core - James Grady, Visual Design +- Will Rabalais, Friendly Error System (Summer 2023) - Patrick Hebron, Video Library (Summer 2011) - Peter Kalauskas, Library/Tool/Mode Install Utility (Summer, Fall 2011) - Andreas Schlegel, Libraries (Winter 2008 - Summer 2011) - Harshani Nawarathna, Processing Development Environment (Summer 2011) - Cindy Chi, Reference Editing (Summer 2011) - Jonathan Feinberg, Parsing & Android Hacking (Spring 2011) -- Chris Lonnen, Processing Development Environment (Summer 2011) +- Lonnen, Processing Development Environment (Summer 2010 - Winter 2010) - Eric Jordan, Graphics Weapon (2007 - 2009) - Tom Carden, Processing Hacks Director (Summer 2005 - Fall 2008) - Lenny Burdette, Website renovation (Summer 2005 - Winter 2006) @@ -83,4 +87,5 @@ The core Processing software is augmented by [libraries](https://www.processing. - Alessandro Capozzo, Italian - Burak Arikan, Turkish -We offer a special "Thank You!" to Sami Arola for writing the base of the original P3D and Simon Greenwold for incorporating camera and lights. Tom Carden contributed great energy by co-creating Processing Hacks and maintaining Processing Blogs. Andreas Schlegel did amazing work for over three years organizing the Contributed Libraries and building templates and documentation. +## Special Thanks +We offer a special "Thank You!" to Sami Arola for writing the base of the original P3D and Simon Greenwold for incorporating camera and lights. Tom Carden contributed great energy by co-creating Processing Hacks and maintaining Processing Blogs. Andreas Schlegel did amazing work for over three years organizing the Contributed Libraries and building templates and documentation. Thanks to Elie Zananiri who tirelessly served as the Processing Librarian from 2011 to 2024. diff --git a/content/pages/privacy/index.es.mdx b/content/pages/privacy/index.es.mdx new file mode 100644 index 000000000..1305abce5 --- /dev/null +++ b/content/pages/privacy/index.es.mdx @@ -0,0 +1,18 @@ +--- +slug: '/privacy' +title: 'Política de Privacidad' +--- + +## Entorno de Desarrollo de Processing (PDE) +El software de Processing en sí no recopila ningún dato del usuario. El PDE (Entorno de Desarrollo de Processing) se ejecuta completamente de manera local, y no se rastrean, almacenan ni comparten datos sobre su uso con la Fundación Processing ni con terceros. El PDE puede conectarse al servidor de Processing para verificar actualizaciones, pero no se recopila información personal en este proceso. Si lo desea, puede desactivar esta verificación de actualizaciones en la configuración. + +## Sitio Web de Processing +Nos comprometemos a respetar su privacidad cuando visite el sitio web de Processing. Para comprender el tráfico del sitio web y mejorar nuestros servicios de la manera más respetuosa con la privacidad posible, utilizamos Fathom Analytics, una plataforma de análisis centrada en la privacidad. + +Fathom Analytics no utiliza cookies y cumple totalmente con las leyes de privacidad, incluidas GDPR, ePrivacy (PECR), COPPA y CCPA. Su dirección IP se procesa brevemente durante su visita, pero se anonimiza y no tenemos medios para identificarlo. No se almacena ni rastrea información personal a lo largo del tiempo. + +El propósito de utilizar Fathom Analytics es comprender el tráfico del sitio web y mejorar la experiencia del usuario sin comprometer su privacidad. Nuestra base legal para usar estos datos, según GDPR, es el Artículo 6(1)(f), donde nuestro interés legítimo es mejorar continuamente el sitio web. Puede obtener más información sobre la política de privacidad de Fathom Analytics en su sitio web en [https://usefathom.com/legal/privacy](https://usefathom.com/legal/privacy). + +Esta política está sujeta a cambios y se actualizará en esta página. Animamos a los usuarios a revisar la política regularmente para cualquier actualización. + +Para cualquier pregunta sobre esta política de privacidad, por favor contáctenos en [privacy@processing.org](mailto:privacy@processing.org). \ No newline at end of file diff --git a/content/pages/privacy/index.mdx b/content/pages/privacy/index.mdx new file mode 100644 index 000000000..efccccd4f --- /dev/null +++ b/content/pages/privacy/index.mdx @@ -0,0 +1,18 @@ +--- +slug: '/privacy' +title: 'Privacy Policy' +--- + +## Processing Development Environment (PDE) +The Processing software itself does not collect any user data. The PDE (Processing Development Environment) runs entirely locally, and no data about your usage is tracked, stored, or shared with the Processing Foundation or any third parties. The PDE may connect to the Processing server to check for updates, but no personal information is collected in this process. If you’d like, you can disable this update check in the settings. + +## Processing Website +We are committed to respecting your privacy when you visit the Processing website. To understand website traffic and improve our services in the most privacy-friendly way possible, we use Fathom Analytics, a privacy-focused analytics platform. + +Fathom Analytics does not use cookies and is fully compliant with privacy laws, including GDPR, ePrivacy (PECR), COPPA, and CCPA. Your IP address is briefly processed during your visit, but it is anonymized, and we have no means of identifying you. No personal information is stored or tracked over time. + +The purpose of using Fathom Analytics is to understand website traffic and improve the user experience without compromising your privacy. Our legal basis for using this data, under GDPR, is Article 6(1)(f), where our legitimate interest is to continually improve the website. You can learn more about Fathom Analytics' privacy policy on their website at [https://usefathom.com/legal/privacy](https://usefathom.com/legal/privacy). + +This policy is subject to change and will be updated on this page. We encourage users to review the policy regularly for any updates. + +For any questions about this privacy policy, please contact us at [privacy@processing.org](mailto:privacy@processing.org). \ No newline at end of file diff --git a/content/references/examples/processing/TWO_PI/TWO_PI.pde b/content/references/examples/processing/TWO_PI/TWO_PI.pde index fce6584c3..0065b00f4 100644 --- a/content/references/examples/processing/TWO_PI/TWO_PI.pde +++ b/content/references/examples/processing/TWO_PI/TWO_PI.pde @@ -1,7 +1,7 @@ float x = width/2; float y = height/2; float d = width * 0.8; -size(400,400); +size(400,400); arc(x, y, d, d, 0, QUARTER_PI); arc(x, y, d-80, d-80, 0, HALF_PI); arc(x, y, d-160, d-160, 0, PI); diff --git a/content/references/examples/processing/circle_/circle.pde b/content/references/examples/processing/circle_/circle.pde index 8516d0125..0a7abba95 100644 --- a/content/references/examples/processing/circle_/circle.pde +++ b/content/references/examples/processing/circle_/circle.pde @@ -1 +1,2 @@ +size(400, 400); circle(224, 184, 220); \ No newline at end of file diff --git a/content/references/examples/processing/curveDetail_/curveDetail_.pde b/content/references/examples/processing/curveDetail_/curveDetail_.pde index 5d919d348..737926a99 100644 --- a/content/references/examples/processing/curveDetail_/curveDetail_.pde +++ b/content/references/examples/processing/curveDetail_/curveDetail_.pde @@ -1,8 +1,9 @@ void setup(){ - size(400,400); + size(400,400,P2D); } -void draw() { +void draw(){ + background(204); curveDetail(1); drawCurves(-60); stroke(126); @@ -11,6 +12,7 @@ void draw() { stroke(255); curveDetail(4); drawCurves(60); + noLoop(); } void drawCurves(float y) { diff --git a/content/references/examples/processing/curveDetail_/curveDetail_.png b/content/references/examples/processing/curveDetail_/curveDetail_.png index eda10cb0e..1cdd4110d 100644 Binary files a/content/references/examples/processing/curveDetail_/curveDetail_.png and b/content/references/examples/processing/curveDetail_/curveDetail_.png differ diff --git a/content/references/examples/processing/textureMode_/textureMode_0.pde b/content/references/examples/processing/textureMode_/textureMode_0.pde index 28d259eec..2d300cd75 100644 --- a/content/references/examples/processing/textureMode_/textureMode_0.pde +++ b/content/references/examples/processing/textureMode_/textureMode_0.pde @@ -4,7 +4,7 @@ PImage img = loadImage("shells.jpg"); beginShape(); texture(img); vertex(40, 80, 0, 0); -vertex(320, 20, 1, 0); -vertex(380, 360, 1, 1); -vertex(160, 380, 0, 1); +vertex(320, 20, 400, 0); +vertex(380, 360, 400, 400); +vertex(160, 380, 0, 400); endShape(); \ No newline at end of file diff --git a/content/references/examples/processing/textureMode_/textureMode_1.pde b/content/references/examples/processing/textureMode_/textureMode_1.pde index 44072493d..b355896c8 100644 --- a/content/references/examples/processing/textureMode_/textureMode_1.pde +++ b/content/references/examples/processing/textureMode_/textureMode_1.pde @@ -1,11 +1,11 @@ size(400, 400, P3D); noStroke(); PImage img = loadImage("shells.jpg"); -textureMode(IMAGE); +textureMode(NORMAL); beginShape(); texture(img); vertex(40, 80, 0, 0); -vertex(320, 20, 400, 0); -vertex(380, 360, 400, 400); -vertex(160, 380, 0, 400); +vertex(320, 20, 1, 0); +vertex(380, 360, 1, 1); +vertex(160, 380, 0, 1); endShape(); \ No newline at end of file diff --git a/content/references/examples/sound/AllPass/AllPass_0.pde b/content/references/examples/sound/AllPass/AllPass_0.pde new file mode 100644 index 000000000..e79cbfe45 --- /dev/null +++ b/content/references/examples/sound/AllPass/AllPass_0.pde @@ -0,0 +1,25 @@ +import processing.sound.*; + +void setup() { + // Create two triangle waves with deconstructive frequencies. + TriOsc triA = new TriOsc(this); + triA.freq(220); + TriOsc triB = new TriOsc(this); + triB.freq(410); + + // Make an Allpass + AllPass allPass = new AllPass(this); + // Give Allpass a high gain to process yucky transience. + allPass.gain(0.995); + + // Start both triangle waves together. + // This will create a lot of unbridled bright sounds. + triA.play(); + triB.play(); + // Processing the sound through this high gained Allpass will warm it up! + allPass.process(triA); + allPass.process(triB); +} + +void draw() { +} diff --git a/content/references/examples/sound/AllPass/AllPass_1.pde b/content/references/examples/sound/AllPass/AllPass_1.pde new file mode 100644 index 000000000..365252928 --- /dev/null +++ b/content/references/examples/sound/AllPass/AllPass_1.pde @@ -0,0 +1,24 @@ +import processing.sound.*; + +SawOsc saw; +AllPass allPass; + +void setup() { + size(100, 100); + + // Create a sawtooth wave and an AllPass filter + saw = new SawOsc(this); + saw.freq(200); + allPass = new AllPass(this); + + // Start the saw wave and push it through the allpass + saw.play(); + allPass.process(saw); +} + +void draw() { + // Set the drive of the allPass with the mouse + float g = map(mouseX, 0, width, 0, 1); + allPass.gain(g); + background(g * 255, 0, 0); +} diff --git a/content/references/examples/sound/AllPass_gain_/AllPass_gain_0.pde b/content/references/examples/sound/AllPass_gain_/AllPass_gain_0.pde new file mode 100644 index 000000000..365252928 --- /dev/null +++ b/content/references/examples/sound/AllPass_gain_/AllPass_gain_0.pde @@ -0,0 +1,24 @@ +import processing.sound.*; + +SawOsc saw; +AllPass allPass; + +void setup() { + size(100, 100); + + // Create a sawtooth wave and an AllPass filter + saw = new SawOsc(this); + saw.freq(200); + allPass = new AllPass(this); + + // Start the saw wave and push it through the allpass + saw.play(); + allPass.process(saw); +} + +void draw() { + // Set the drive of the allPass with the mouse + float g = map(mouseX, 0, width, 0, 1); + allPass.gain(g); + background(g * 255, 0, 0); +} diff --git a/content/references/examples/sound/AllPass_process_/AllPass_process_0.pde b/content/references/examples/sound/AllPass_process_/AllPass_process_0.pde new file mode 100644 index 000000000..e79cbfe45 --- /dev/null +++ b/content/references/examples/sound/AllPass_process_/AllPass_process_0.pde @@ -0,0 +1,25 @@ +import processing.sound.*; + +void setup() { + // Create two triangle waves with deconstructive frequencies. + TriOsc triA = new TriOsc(this); + triA.freq(220); + TriOsc triB = new TriOsc(this); + triB.freq(410); + + // Make an Allpass + AllPass allPass = new AllPass(this); + // Give Allpass a high gain to process yucky transience. + allPass.gain(0.995); + + // Start both triangle waves together. + // This will create a lot of unbridled bright sounds. + triA.play(); + triB.play(); + // Processing the sound through this high gained Allpass will warm it up! + allPass.process(triA); + allPass.process(triB); +} + +void draw() { +} diff --git a/content/references/examples/sound/Amplitude_stop_/Amplitude_stop_0.pde b/content/references/examples/sound/Amplitude_stop_/Amplitude_stop_0.pde deleted file mode 100644 index b8d2a3378..000000000 --- a/content/references/examples/sound/Amplitude_stop_/Amplitude_stop_0.pde +++ /dev/null @@ -1,22 +0,0 @@ -import processing.sound.*; -Amplitude amp; -AudioIn in; - -void setup() { - size(640, 360); - background(255); - - // Create an Input stream which is routed into the Amplitude analyzer - amp = new Amplitude(this); - in = new AudioIn(this, 0); - in.start(); - amp.input(in); -} - -void draw() { - println(amp.analyze()); -} - -void mousePressed() { - in.stop(); -} diff --git a/content/references/examples/sound/FFT_stop_/FFT_stop_0.pde b/content/references/examples/sound/FFT_stop_/FFT_stop_0.pde deleted file mode 100644 index cf0dad259..000000000 --- a/content/references/examples/sound/FFT_stop_/FFT_stop_0.pde +++ /dev/null @@ -1,36 +0,0 @@ -import processing.sound.*; - -FFT fft; -AudioIn in; -int bands = 512; -float[] spectrum = new float[bands]; - -void setup() { - size(512, 360); - background(255); - - // Create an Input stream which is routed into the Amplitude analyzer - fft = new FFT(this, bands); - in = new AudioIn(this, 0); - - // start the Audio Input - in.start(); - - // patch the AudioIn - fft.input(in); -} - -void draw() { - background(255); - fft.analyze(spectrum); - - for(int i = 0; i < bands; i++){ - // The result of the FFT is normalized - // draw the line for frequency band i scaling it up by 5 to get more amplitude. - line( i, height, i, height - spectrum[i]*height*5 ); - } -} - -void mousePressed() { - in.stop(); -} diff --git a/content/references/examples/sound/SoundFile_set_/SoundFile_set_0.pde b/content/references/examples/sound/SoundFile_set_/SoundFile_set_0.pde index 0593cfb9b..990d47edd 100644 --- a/content/references/examples/sound/SoundFile_set_/SoundFile_set_0.pde +++ b/content/references/examples/sound/SoundFile_set_/SoundFile_set_0.pde @@ -16,7 +16,6 @@ void mousePressed() { float rate = 3; float pos = 0.5; float amp = 0.5; - float add = 0; - file.set(rate, pos, amp, add); + file.set(rate, pos, amp); } diff --git a/content/references/translations/en/io/SPI_settings_.json b/content/references/translations/en/io/SPI_settings_.json index bbc019270..761260cea 100644 --- a/content/references/translations/en/io/SPI_settings_.json +++ b/content/references/translations/en/io/SPI_settings_.json @@ -22,7 +22,7 @@ }, { "name": "mode", - "description": "SPI.MODE0\n to SPI.MODE3", + "description": ",SPI.MODE0\n to SPI.MODE3,", "type": ["int"] } ] diff --git a/content/references/translations/en/net/Client.json b/content/references/translations/en/net/Client.json index 98f52f308..f7de48661 100644 --- a/content/references/translations/en/net/Client.json +++ b/content/references/translations/en/net/Client.json @@ -65,7 +65,7 @@ "csspath": "../../", "isLibrary": "true", "classFields": [], - "description": "A client connects to a server and sends data back and forth. If anything \n goes wrong with the connection, for example the host is not there or is \n listening on a different port, an exception is thrown.", + "description": "A client connects to a server and sends data back and forth. If anything\n goes wrong with the connection, for example the host is not there or is\n listening on a different port, an exception is thrown.", "type": "class", "constructors": ["Client(parent, host, port)", "Client(parent, socket)"], "related": ["LIB_net/clientEvent_"], diff --git a/content/references/translations/en/net/Client_available_.json b/content/references/translations/en/net/Client_available_.json index 597eb15cb..43f867117 100644 --- a/content/references/translations/en/net/Client_available_.json +++ b/content/references/translations/en/net/Client_available_.json @@ -2,7 +2,7 @@ "brief": "Returns the number of bytes in the buffer waiting to be read", "related": [], "name": "available()", - "description": "Returns the number of bytes available. When any client has bytes \n available from the server, it returns the number of bytes.", + "description": "Returns the number of bytes available. When any client has bytes\n available from the server, it returns the number of bytes.", "syntax": ["client.available()"], "returns": "int", "type": "method", diff --git a/content/references/translations/en/net/Client_readBytesUntil_.json b/content/references/translations/en/net/Client_readBytesUntil_.json index 0df1648d0..60c25db88 100644 --- a/content/references/translations/en/net/Client_readBytesUntil_.json +++ b/content/references/translations/en/net/Client_readBytesUntil_.json @@ -2,7 +2,7 @@ "brief": "Reads from the buffer of bytes up to and including a particular character", "related": [], "name": "readBytesUntil()", - "description": "Reads from the port into a buffer of bytes up to and including a \n particular character. If the character isn't in the buffer, 'null' is \n returned. The version with no byteBuffer parameter returns a byte \n array of all data up to and including the interesting byte. This \n is not efficient, but is easy to use. The version with the \n byteBuffer parameter is more memory and time efficient. It grabs \n the data in the buffer and puts it into the byte array passed in and \n returns an int value for the number of bytes read. If the byte buffer is \n not large enough, -1 is returned and an error is printed to the message \n area. If nothing is in the buffer, 0 is returned.", + "description": "Reads from the port into a buffer of bytes up to and including a\n particular character. If the character isn't in the buffer, 'null' is\n returned. The version with no byteBuffer parameter returns a byte\n array of all data up to and including the interesting byte. This\n is not efficient, but is easy to use. The version with the\n byteBuffer parameter is more memory and time efficient. It grabs\n the data in the buffer and puts it into the byte array passed in and\n returns an int value for the number of bytes read. If the byte buffer is\n not large enough, -1 is returned and an error is printed to the message\n area. If nothing is in the buffer, 0 is returned.", "syntax": [ "client.readBytesUntil(interesting)", "client.readBytesUntil(interesting, byteBuffer)" diff --git a/content/references/translations/en/net/Client_readBytes_.json b/content/references/translations/en/net/Client_readBytes_.json index e64db6655..0193c0825 100644 --- a/content/references/translations/en/net/Client_readBytes_.json +++ b/content/references/translations/en/net/Client_readBytes_.json @@ -2,7 +2,7 @@ "brief": "Reads a group of bytes from the buffer", "related": [], "name": "readBytes()", - "description": "Reads a group of bytes from the buffer. The version with no parameters \n returns a byte array of all data in the buffer. This is not efficient, \n but is easy to use. The version with the byteBuffer parameter is \n more memory and time efficient. It grabs the data in the buffer and puts \n it into the byte array passed in and returns an int value for the number \n of bytes read. If more bytes are available than can fit into the \n byteBuffer, only those that fit are read.\n \n ", + "description": "Reads a group of bytes from the buffer. The version with no parameters\n returns a byte array of all data in the buffer. This is not efficient,\n but is easy to use. The version with the byteBuffer parameter is\n more memory and time efficient. It grabs the data in the buffer and puts\n it into the byte array passed in and returns an int value for the number\n of bytes read. If more bytes are available than can fit into the\n byteBuffer, only those that fit are read.\n\n ", "syntax": [ "client.readBytes()", "client.readBytes(max)", diff --git a/content/references/translations/en/net/Client_readChar_.json b/content/references/translations/en/net/Client_readChar_.json index 611eec0a3..426df4cb1 100644 --- a/content/references/translations/en/net/Client_readChar_.json +++ b/content/references/translations/en/net/Client_readChar_.json @@ -2,7 +2,7 @@ "brief": "Returns the next byte in the buffer as a char", "related": [], "name": "readChar()", - "description": "Returns the next byte in the buffer as a char. Returns -1 or \n 0xffff if nothing is there.", + "description": "Returns the next byte in the buffer as a char. Returns -1 or\n 0xffff if nothing is there.", "syntax": ["client.readChar()"], "returns": "char", "type": "method", diff --git a/content/references/translations/en/net/Client_readStringUntil_.json b/content/references/translations/en/net/Client_readStringUntil_.json index d6cddd5cc..8e1d2cc16 100644 --- a/content/references/translations/en/net/Client_readStringUntil_.json +++ b/content/references/translations/en/net/Client_readStringUntil_.json @@ -2,7 +2,7 @@ "brief": "Returns the buffer as a String up to and including a particular character", "related": [], "name": "readStringUntil()", - "description": "Combination of readBytesUntil() and readString(). Returns \n null if it doesn't find what you're looking for.\n \n ", + "description": "Combination of readBytesUntil() and readString(). Returns\n null if it doesn't find what you're looking for.\n\n ", "syntax": ["client.readStringUntil(interesting)"], "returns": "String", "type": "method", diff --git a/content/references/translations/en/net/Client_readString_.json b/content/references/translations/en/net/Client_readString_.json index 1db65eae7..c5cf749b6 100644 --- a/content/references/translations/en/net/Client_readString_.json +++ b/content/references/translations/en/net/Client_readString_.json @@ -2,7 +2,7 @@ "brief": "Returns the buffer as a String", "related": [], "name": "readString()", - "description": "Returns the all the data from the buffer as a String. This method \n assumes the incoming characters are ASCII. If you want to transfer \n Unicode data, first convert the String to a byte stream in the \n representation of your choice (i.e. UTF8 or two-byte Unicode data), and \n send it as a byte array.", + "description": "Returns the all the data from the buffer as a String.\n\n In 4.0 beta 3, changed to using UTF-8 as the encoding,\n otherwise the behavior is platform-dependent.", "syntax": ["client.readString()"], "returns": "String", "type": "method", diff --git a/content/references/translations/en/net/Client_read_.json b/content/references/translations/en/net/Client_read_.json index 5a6450a7f..ee669c6ae 100644 --- a/content/references/translations/en/net/Client_read_.json +++ b/content/references/translations/en/net/Client_read_.json @@ -2,7 +2,7 @@ "brief": "Returns a value from the buffer", "related": [], "name": "read()", - "description": "Returns a number between 0 and 255 for the next byte that's waiting in \n the buffer. Returns -1 if there is no byte, although this should be \n avoided by first cheacking available() to see if any data is available.", + "description": "Returns a number between 0 and 255 for the next byte that's waiting in\n the buffer. Returns -1 if there is no byte, although this should be\n avoided by first checking available() to see if any data is available.", "syntax": ["client.read()"], "returns": "int", "type": "method", diff --git a/content/references/translations/en/net/Client_stop_.json b/content/references/translations/en/net/Client_stop_.json index 56ae9aad7..97c98821c 100644 --- a/content/references/translations/en/net/Client_stop_.json +++ b/content/references/translations/en/net/Client_stop_.json @@ -2,7 +2,7 @@ "brief": "Disconnects from the server", "related": [], "name": "stop()", - "description": "Disconnects from the server. Use to shut the connection when you're \n finished with the Client.", + "description": "Disconnects from the server. Use to shut the connection when you're\n finished with the Client.", "syntax": ["client.stop()"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/net/Client_write_.json b/content/references/translations/en/net/Client_write_.json index d256146ec..f06e22671 100644 --- a/content/references/translations/en/net/Client_write_.json +++ b/content/references/translations/en/net/Client_write_.json @@ -2,7 +2,7 @@ "brief": "Writes bytes, chars, ints, bytes[], Strings", "related": [], "name": "write()", - "description": "Writes data to a server specified when constructing the client, or writes \n data to the specific client obtained from the Server available() \n method.", + "description": "Writes data to a server specified when constructing the client, or writes\n data to the specific client obtained from the Server available()\n method.", "syntax": ["client.write(data)"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/net/Server.json b/content/references/translations/en/net/Server.json index 0934010e2..c45caccd0 100644 --- a/content/references/translations/en/net/Server.json +++ b/content/references/translations/en/net/Server.json @@ -1,5 +1,5 @@ { - "brief": "The server class is used to create server objects which send \n and receives data to and from its associated clients (other programs connected to it)", + "brief": "The server class is used to create server objects which send\n and receives data to and from its associated clients (other programs connected to it)", "methods": [ { "anchor": "Server_disconnect_", @@ -30,7 +30,7 @@ "csspath": "../../", "isLibrary": "true", "classFields": [], - "description": "A server sends and receives data to and from its associated clients \n (other programs connected to it). When a server is started, it begins \n listening for connections on the port specified by the port \n parameter. Computers have many ports for transferring data and some are \n commonly used so be sure to not select one of these. For example, web \n servers usually use port 80 and POP mail uses port 110.", + "description": "A server sends and receives data to and from its associated clients\n (other programs connected to it). When a server is started, it begins\n listening for connections on the port specified by the port\n parameter. Computers have many ports for transferring data and some are\n commonly used so be sure to not select one of these. For example, web\n servers usually use port 80 and POP mail uses port 110.", "type": "class", "constructors": ["Server(parent, port)", "Server(parent, port, host)"], "related": [], diff --git a/content/references/translations/en/net/Server_stop_.json b/content/references/translations/en/net/Server_stop_.json index 4dfdebd61..4447f9071 100644 --- a/content/references/translations/en/net/Server_stop_.json +++ b/content/references/translations/en/net/Server_stop_.json @@ -2,7 +2,7 @@ "brief": "Disconnects all clients and stops the server", "related": [], "name": "stop()", - "description": "Disconnects all clients and stops the server.\n \n ", + "description": "Disconnects all clients and stops the server.\n\n ", "syntax": ["server.stop()"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/net/Server_write_.json b/content/references/translations/en/net/Server_write_.json index f12d3c4dc..25f0f89f9 100644 --- a/content/references/translations/en/net/Server_write_.json +++ b/content/references/translations/en/net/Server_write_.json @@ -2,7 +2,7 @@ "brief": "Writes data to all connected clients", "related": [], "name": "write()", - "description": "Writes a value to all the connected clients. It sends bytes out from the \n Server object.", + "description": "Writes a value to all the connected clients. It sends bytes out from the\n Server object.", "syntax": ["server.write(data)"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/processing/FloatDict_keys_.json b/content/references/translations/en/processing/FloatDict_keys_.json index 7c63b6e1e..8fd454c02 100644 --- a/content/references/translations/en/processing/FloatDict_keys_.json +++ b/content/references/translations/en/processing/FloatDict_keys_.json @@ -4,7 +4,7 @@ "name": "keys()", "description": "Return the internal array being used to store the keys.", "syntax": [".keys()"], - "returns": "Iterable", + "returns": "Iterable<String>", "type": "method", "category": "floatdict", "subcategory": "method", diff --git a/content/references/translations/en/processing/FloatDict_values_.json b/content/references/translations/en/processing/FloatDict_values_.json index 06d695944..2eb67ae41 100644 --- a/content/references/translations/en/processing/FloatDict_values_.json +++ b/content/references/translations/en/processing/FloatDict_values_.json @@ -4,7 +4,7 @@ "name": "values()", "description": "Return the internal array being used to store the values.", "syntax": [".values()"], - "returns": "Iterable", + "returns": "Iterable<Float>", "type": "method", "category": "floatdict", "subcategory": "method", diff --git a/content/references/translations/en/processing/FloatList.json b/content/references/translations/en/processing/FloatList.json index 59111a10e..618d29696 100644 --- a/content/references/translations/en/processing/FloatList.json +++ b/content/references/translations/en/processing/FloatList.json @@ -79,15 +79,15 @@ "desc": "Randomize the order of the list elements" }, { - "anchor": "FloatList_array_", - "name": "array()", + "anchor": "FloatList_toArray_", + "name": "toArray()", "desc": "Create a new array with a copy of all the values" } ], "csspath": "../../", "isLibrary": "true", "classFields": [], - "description": "Helper class for a list of floats. Lists are designed to have some of the\n features of ArrayLists, but to maintain the simplicity and efficiency of\n working with arrays.\n\n Functions like sort() and shuffle() always act on the list itself. To get\n a sorted copy, use list.copy().sort().", + "description": "Helper class for a list of float values. Lists are designed\n to have some features of ArrayList, but to maintain the\n simplicity and efficiency of working with arrays.\n Functions such as sort() and shuffle() always act on\n the list itself. To get a sorted copy, use list.copy().sort().", "type": "class", "constructors": ["FloatList()", "FloatList(items)"], "related": ["IntList", "StringList"], diff --git a/content/references/translations/en/processing/FloatList_toArray_.json b/content/references/translations/en/processing/FloatList_toArray_.json new file mode 100644 index 000000000..b1c44b7c8 --- /dev/null +++ b/content/references/translations/en/processing/FloatList_toArray_.json @@ -0,0 +1,13 @@ +{ + "brief": "Create a new array with a copy of all the values", + "related": [], + "name": "toArray()", + "description": "Create a new array with a copy of all the values.", + "syntax": [".toArray()", ".toArray(array)"], + "returns": "float[]", + "type": "method", + "category": "floatlist", + "subcategory": "method", + "classanchor": "FloatList", + "parameters": [] +} diff --git a/content/references/translations/en/processing/IntDict_keys_.json b/content/references/translations/en/processing/IntDict_keys_.json index 05a437b8e..07e15319c 100644 --- a/content/references/translations/en/processing/IntDict_keys_.json +++ b/content/references/translations/en/processing/IntDict_keys_.json @@ -4,7 +4,7 @@ "name": "keys()", "description": "Return the internal array being used to store the keys.", "syntax": [".keys()"], - "returns": "Iterable", + "returns": "Iterable<String>", "type": "method", "category": "intdict", "subcategory": "method", diff --git a/content/references/translations/en/processing/IntDict_values_.json b/content/references/translations/en/processing/IntDict_values_.json index 73e0bf5d9..663e5d97e 100644 --- a/content/references/translations/en/processing/IntDict_values_.json +++ b/content/references/translations/en/processing/IntDict_values_.json @@ -4,7 +4,7 @@ "name": "values()", "description": "Return the internal array being used to store the values.", "syntax": [".values()"], - "returns": "Iterable", + "returns": "Iterable<Integer>", "type": "method", "category": "intdict", "subcategory": "method", diff --git a/content/references/translations/en/processing/IntList.json b/content/references/translations/en/processing/IntList.json index de16e68af..470ec2abc 100644 --- a/content/references/translations/en/processing/IntList.json +++ b/content/references/translations/en/processing/IntList.json @@ -80,15 +80,15 @@ "desc": "Randomize the order of the list elements" }, { - "anchor": "IntList_array_", - "name": "array()", + "anchor": "IntList_toArray_", + "name": "toArray()", "desc": "Create a new array with a copy of all the values" } ], "csspath": "../../", "isLibrary": "true", "classFields": [], - "description": "Helper class for a list of ints. Lists are designed to have some of the\n features of ArrayLists, but to maintain the simplicity and efficiency of\n working with arrays.\n\n Functions like sort() and shuffle() always act on the list itself. To get\n a sorted copy, use list.copy().sort().", + "description": "Helper class for a list of int values. Lists are designed\n to have some features of ArrayList, but to maintain the\n simplicity and efficiency of working with arrays.\n Functions such as sort() and shuffle() always act on\n the list itself. To get a sorted copy, use list.copy().sort().", "type": "class", "constructors": ["IntList()", "IntList(items)"], "related": ["FloatList", "StringList"], diff --git a/content/references/translations/en/processing/IntList_toArray_.json b/content/references/translations/en/processing/IntList_toArray_.json new file mode 100644 index 000000000..06da117df --- /dev/null +++ b/content/references/translations/en/processing/IntList_toArray_.json @@ -0,0 +1,13 @@ +{ + "brief": "Create a new array with a copy of all the values", + "related": [], + "name": "toArray()", + "description": "Create a new array with a copy of all the values.", + "syntax": [".toArray()", ".toArray(array)"], + "returns": "int[]", + "type": "method", + "category": "intlist", + "subcategory": "method", + "classanchor": "IntList", + "parameters": [] +} diff --git a/content/references/translations/en/processing/JSONArray.json b/content/references/translations/en/processing/JSONArray.json index 8675d1981..e4311ecf3 100644 --- a/content/references/translations/en/processing/JSONArray.json +++ b/content/references/translations/en/processing/JSONArray.json @@ -32,13 +32,13 @@ "desc": "Retrieves the JSONObject with the associated index value" }, { - "anchor": "JSONArray_getStringArray_", - "name": "getStringArray()", + "anchor": "JSONArray_toStringArray_", + "name": "toStringArray()", "desc": "Returns the entire JSONArray as an array of Strings" }, { - "anchor": "JSONArray_getIntArray_", - "name": "getIntArray()", + "anchor": "JSONArray_toIntArray_", + "name": "toIntArray()", "desc": "Returns the entire JSONArray as an array of ints" }, { diff --git a/content/references/translations/en/processing/JSONArray_toIntArray_.json b/content/references/translations/en/processing/JSONArray_toIntArray_.json new file mode 100644 index 000000000..ee0fe9d62 --- /dev/null +++ b/content/references/translations/en/processing/JSONArray_toIntArray_.json @@ -0,0 +1,13 @@ +{ + "brief": "Returns the entire JSONArray as an array of ints", + "related": [], + "name": "toIntArray()", + "description": "Returns the entire JSONArray as an array of ints. \n (All values in the array must be of the int type.)", + "syntax": [".toIntArray()"], + "returns": "int[]", + "type": "method", + "category": "jsonarray", + "subcategory": "method", + "classanchor": "JSONArray", + "parameters": [] +} diff --git a/content/references/translations/en/processing/JSONArray_toStringArray_.json b/content/references/translations/en/processing/JSONArray_toStringArray_.json new file mode 100644 index 000000000..6510c25fd --- /dev/null +++ b/content/references/translations/en/processing/JSONArray_toStringArray_.json @@ -0,0 +1,13 @@ +{ + "brief": "Returns the entire JSONArray as an array of Strings", + "related": [], + "name": "toStringArray()", + "description": "Returns the entire JSONArray as an array of Strings. \n (All values in the array must be of the String type.)", + "syntax": [".toStringArray()"], + "returns": "String[]", + "type": "method", + "category": "jsonarray", + "subcategory": "method", + "classanchor": "JSONArray", + "parameters": [] +} diff --git a/content/references/translations/en/processing/JSONObject.json b/content/references/translations/en/processing/JSONObject.json index dc46f804f..966a00c76 100644 --- a/content/references/translations/en/processing/JSONObject.json +++ b/content/references/translations/en/processing/JSONObject.json @@ -70,7 +70,7 @@ "csspath": "../../", "isLibrary": "true", "classFields": [], - "description": "A JSONObject stores JSON data with multiple name/value pairs. Values\n can be numeric, Strings, booleans, other JSONObjects or\n JSONArrays, or null. JSONObject and JSONArray objects\n are quite similar and share most of the same methods; the primary difference\n is that the latter stores an array of JSON objects, while the former\n represents a single JSON object.
\n
\n JSON can be generated from scratch, dynamically, or using data from an\n existing file. JSON can also be output and saved to disk, as in the example\n above.\n \n ", + "description": "A JSONObject stores JSON data with multiple name/value pairs. Values\n can be numeric, Strings, booleans, other JSONObjects or\n JSONArrays, or null. JSONObject and JSONArray objects\n are quite similar and share most of the same methods; the primary difference\n is that the latter stores an array of JSON objects, while the former\n represents a single JSON object.
\n
\n JSON can be generated from scratch, dynamically, or using data from an\n existing file. JSON can also be output and saved to disk, as in the example\n above.\n \n ", "type": "class", "constructors": [], "related": [ diff --git a/content/references/translations/en/processing/PFont.json b/content/references/translations/en/processing/PFont.json index aa3383cbb..0cdd36db9 100644 --- a/content/references/translations/en/processing/PFont.json +++ b/content/references/translations/en/processing/PFont.json @@ -11,7 +11,7 @@ ], "name": "PFont", "classFields": [], - "description": "PFont is the font class for Processing. To create a font to use with\n Processing, select \"Create Font...\" from the Tools menu. This will create a\n font in the format Processing requires and also adds it to the current\n sketch's data directory. Processing displays fonts using the .vlw font\n format, which uses images for each letter, rather than defining them through\n vector data. The loadFont() function constructs a new font and\n textFont() makes a font active. The list() method creates a\n list of the fonts installed on the computer, which is useful information to\n use with the createFont() function for dynamically converting fonts\n into a format to use with Processing.
\n
\n To create a new font dynamically, use the createFont() function. Do\n not use the syntax new PFont().\n\n ", + "description": "PFont is the font class for Processing. To create a font to use with\n Processing, select \"Create Font...\" from the Tools menu. This will create a\n font in the format Processing requires and also adds it to the current\n sketch's data directory. Processing displays fonts using the .vlw font\n format, which uses images for each letter, rather than defining them through\n vector data. The loadFont() function constructs a new font and\n textFont() makes a font active. The list() method creates a\n list of the fonts installed on the computer, which is useful information to\n use with the createFont() function for dynamically converting fonts\n into a format to use with Processing.
\n
\n To create a new font dynamically, use the createFont() function. Do\n not use the syntax new PFont().\n\n ", "type": "class", "classanchor": "PFont", "category": "typography", diff --git a/content/references/translations/en/processing/PGraphics.json b/content/references/translations/en/processing/PGraphics.json index 11d74a233..76a78a991 100644 --- a/content/references/translations/en/processing/PGraphics.json +++ b/content/references/translations/en/processing/PGraphics.json @@ -16,7 +16,7 @@ ], "name": "PGraphics", "classFields": [], - "description": "Main graphics and rendering context, as well as the base API implementation\n for processing \"core\". Use this class if you need to draw into an off-screen\n graphics buffer. A PGraphics object can be constructed with the\n createGraphics() function. The beginDraw() and endDraw()\n methods (see above example) are necessary to set up the buffer and to\n finalize it. The fields and methods for this class are extensive. For a\n complete list, visit the\n developer's\n reference.
\n
\n To create a new graphics context, use the createGraphics() function.\n Do not use the syntax new PGraphics().\n\n ", + "description": "Main graphics and rendering context, as well as the base API implementation\n for processing \"core\". Use this class if you need to draw into an off-screen\n graphics buffer. A PGraphics object can be constructed with the\n createGraphics() function. The beginDraw() and endDraw()\n methods (see above example) are necessary to set up the buffer and to\n finalize it. The fields and methods for this class are extensive. For a\n complete list, visit the\n developer's\n reference.
\n
\n To create a new graphics context, use the createGraphics() function.\n Do not use the syntax new PGraphics().\n\n ", "type": "class", "classanchor": "PGraphics", "category": "rendering", diff --git a/content/references/translations/en/processing/PImage.json b/content/references/translations/en/processing/PImage.json index d286a4483..04c1c3061 100644 --- a/content/references/translations/en/processing/PImage.json +++ b/content/references/translations/en/processing/PImage.json @@ -82,7 +82,7 @@ "desc": "The height of the image in units of pixels" } ], - "description": "Datatype for storing images. Processing can display .gif, .jpg,\n .tga, and .png images. Images may be displayed in 2D and 3D\n space. Before an image is used, it must be loaded with the loadImage()\n function. The PImage class contains fields for the width and\n height of the image, as well as an array called pixels[] that\n contains the values for every pixel in the image. The methods described below\n allow easy access to the image's pixels and alpha channel and simplify the\n process of compositing.
\n
\n Before using the pixels[] array, be sure to use the\n loadPixels() method on the image to make sure that the pixel data is\n properly loaded.
\n
\n To create a new image, use the createImage() function. Do not use the\n syntax new PImage().", + "description": "Datatype for storing images. Processing can display .gif, .jpg,\n .tga, and .png images. Images may be displayed in 2D and 3D\n space. Before an image is used, it must be loaded with the loadImage()\n function. The PImage class contains fields for the width and\n height of the image, as well as an array called pixels[] that\n contains the values for every pixel in the image. The methods described below\n allow easy access to the image's pixels and alpha channel and simplify the\n process of compositing.
\n
\n Before using the pixels[] array, be sure to use the\n loadPixels() method on the image to make sure that the pixel data is\n properly loaded.
\n
\n To create a new image, use the createImage() function. Do not use the\n syntax new PImage().", "type": "class", "classanchor": "PImage", "category": "image", diff --git a/content/references/translations/en/processing/PImage_blendColor_.json b/content/references/translations/en/processing/PImage_blendColor_.json index d7eb26d64..2dead3b4b 100644 --- a/content/references/translations/en/processing/PImage_blendColor_.json +++ b/content/references/translations/en/processing/PImage_blendColor_.json @@ -1,6 +1,6 @@ { "brief": "Blends two color values together based on the blending mode given as the\n MODE parameter", - "related": ["PImage_blend_"], + "related": ["PImage_blend_", "color_"], "name": "blendColor()", "description": "Blends two color values together based on the blending mode given as the\n MODE parameter. The possible modes are described in the reference\n for the blend() function.\n\n ", "syntax": ["pimg.blendColor(c1, c2, mode)"], diff --git a/content/references/translations/en/processing/PImage_blend_.json b/content/references/translations/en/processing/PImage_blend_.json index a7baa5f04..35720439e 100644 --- a/content/references/translations/en/processing/PImage_blend_.json +++ b/content/references/translations/en/processing/PImage_blend_.json @@ -2,7 +2,7 @@ "brief": "Copies a pixel or rectangle of pixels using different blending modes", "related": ["alpha_", "PImage_copy_", "PImage_blendColor_"], "name": "blend()", - "description": "Blends a region of pixels into the image specified by the img\n parameter. These copies utilize full alpha channel support and a choice\n of the following modes to blend the colors of source pixels (A) with the\n ones of pixels in the destination image (B):
\n
\n BLEND - linear interpolation of colours: C = A*factor + B
\n
\n ADD - additive blending with white clip: C = min(A*factor + B, 255)
\n
\n SUBTRACT - subtractive blending with black clip: C = max(B - A*factor,\n 0)
\n
\n DARKEST - only the darkest colour succeeds: C = min(A*factor, B)
\n
\n LIGHTEST - only the lightest colour succeeds: C = max(A*factor, B)
\n
\n DIFFERENCE - subtract colors from underlying image.
\n
\n EXCLUSION - similar to DIFFERENCE, but less extreme.
\n
\n MULTIPLY - Multiply the colors, result will always be darker.
\n
\n SCREEN - Opposite multiply, uses inverse values of the colors.
\n
\n OVERLAY - A mix of MULTIPLY and SCREEN. Multiplies dark values,\n and screens light values.
\n
\n HARD_LIGHT - SCREEN when greater than 50% gray, MULTIPLY when lower.
\n
\n SOFT_LIGHT - Mix of DARKEST and LIGHTEST.\n Works like OVERLAY, but not as harsh.
\n
\n DODGE - Lightens light tones and increases contrast, ignores darks.\n Called \"Color Dodge\" in Illustrator and Photoshop.
\n
\n BURN - Darker areas are applied, increasing contrast, ignores lights.\n Called \"Color Burn\" in Illustrator and Photoshop.
\n
\n All modes use the alpha information (highest byte) of source image\n pixels as the blending factor. If the source and destination regions are\n different sizes, the image will be automatically resized to match the\n destination size. If the srcImg parameter is not used, the\n display window is used as the source image.
\n
\n As of release 0149, this function ignores imageMode().", + "description": "Blends a region of pixels into the image specified by the img\n parameter. These copies utilize full alpha channel support and a choice\n of the following modes to blend the colors of source pixels (A) with the\n ones of pixels in the destination image (B):
\n
\n BLEND - linear interpolation of colours: C = A*factor + B
\n
\n ADD - additive blending with white clip: C = min(A*factor + B, 255)
\n
\n SUBTRACT - subtractive blending with black clip: C = max(B - A*factor,\n 0)
\n
\n DARKEST - only the darkest colour succeeds: C = min(A*factor, B)
\n
\n LIGHTEST - only the lightest colour succeeds: C = max(A*factor, B)
\n
\n DIFFERENCE - subtract colors from underlying image.
\n
\n EXCLUSION - similar to DIFFERENCE, but less extreme.
\n
\n MULTIPLY - Multiply the colors, result will always be darker.
\n
\n SCREEN - Opposite multiply, uses inverse values of the colors.
\n
\n OVERLAY - A mix of MULTIPLY and SCREEN. Multiplies dark values,\n and screens light values.
\n
\n HARD_LIGHT - SCREEN when greater than 50% gray, MULTIPLY when lower.
\n
\n SOFT_LIGHT - Mix of DARKEST and LIGHTEST.\n Works like OVERLAY, but not as harsh.
\n
\n DODGE - Lightens light tones and increases contrast, ignores darks.\n Called \"Color Dodge\" in Illustrator and Photoshop.
\n
\n BURN - Darker areas are applied, increasing contrast, ignores lights.\n Called \"Color Burn\" in Illustrator and Photoshop.
\n
\n All modes use the alpha information (the highest byte) of source image\n pixels as the blending factor. If the source and destination regions are\n different sizes, the image will be automatically resized to match the\n destination size. If the srcImg parameter is not used, the\n display window is used as the source image.
\n
\n As of release 0149, this function ignores imageMode().", "syntax": [ "pimg.blend(sx, sy, sw, sh, dx, dy, dw, dh, mode)", "pimg.blend(src, sx, sy, sw, sh, dx, dy, dw, dh, mode)" diff --git a/content/references/translations/en/processing/PImage_copy_.json b/content/references/translations/en/processing/PImage_copy_.json index febc6d526..e96c5b994 100644 --- a/content/references/translations/en/processing/PImage_copy_.json +++ b/content/references/translations/en/processing/PImage_copy_.json @@ -2,7 +2,7 @@ "brief": "Copies the entire image", "related": ["PGraphics_alpha_", "PImage_blend_"], "name": "copy()", - "description": "Copies a region of pixels from one image into another. If the source and\n destination regions aren't the same size, it will automatically resize\n source pixels to fit the specified target region. No alpha information\n is used in the process, however if the source image has an alpha channel\n set, it will be copied as well.\n

\n As of release 0149, this function ignores imageMode().", + "description": "Copies a region of pixels from one image into another. If the source and\n destination regions aren't the same size, it will automatically resize\n source pixels to fit the specified target region. No alpha information\n is used in the process, however if the source image has an alpha channel\n set, it will be copied as well.\n

\n As of release 0149, this function ignores imageMode().", "syntax": [ "pimg.copy()", "pimg.copy(sx, sy, sw, sh, dx, dy, dw, dh)", diff --git a/content/references/translations/en/processing/PImage_filter_.json b/content/references/translations/en/processing/PImage_filter_.json index 1cadc3def..e290f24a6 100644 --- a/content/references/translations/en/processing/PImage_filter_.json +++ b/content/references/translations/en/processing/PImage_filter_.json @@ -2,7 +2,7 @@ "brief": "Converts the image to grayscale or black and white", "related": [], "name": "filter()", - "description": "Filters the image as defined by one of the following modes:
\n
\n THRESHOLD
\n Converts the image to black and white pixels depending if they are above or\n below the threshold defined by the level parameter. The parameter must be\n between 0.0 (black) and 1.0 (white). If no level is specified, 0.5 is\n used.
\n
\n GRAY
\n Converts any colors in the image to grayscale equivalents. No parameter is\n used.
\n
\n OPAQUE
\n Sets the alpha channel to entirely opaque. No parameter is used.
\n
\n INVERT
\n Sets each pixel to its inverse value. No parameter is used.
\n
\n POSTERIZE
\n Limits each channel of the image to the number of colors specified as the\n parameter. The parameter can be set to values between 2 and 255, but results\n are most noticeable in the lower ranges.
\n
\n BLUR
\n Executes a Gaussian blur with the level parameter specifying the extent of\n the blurring. If no parameter is used, the blur is equivalent to Gaussian\n blur of radius 1. Larger values increase the blur.
\n
\n ERODE
\n Reduces the light areas. No parameter is used.
\n
\n DILATE
\n Increases the light areas. No parameter is used.\n\n\n ", + "description": "Filters the image as defined by one of the following modes:
\n
\n THRESHOLD
\n Converts the image to black and white pixels depending on if they\n are above or below the threshold defined by the level parameter.\n The parameter must be between 0.0 (black) and 1.0 (white).\n If no level is specified, 0.5 is used.
\n
\n GRAY
\n Converts any colors in the image to grayscale equivalents. No parameter is\n used.
\n
\n OPAQUE
\n Sets the alpha channel to entirely opaque. No parameter is used.
\n
\n INVERT
\n Sets each pixel to its inverse value. No parameter is used.
\n
\n POSTERIZE
\n Limits each channel of the image to the number of colors specified as the\n parameter. The parameter can be set to values between 2 and 255, but results\n are most noticeable in the lower ranges.
\n
\n BLUR
\n Executes a Gaussian blur with the level parameter specifying the extent of\n the blurring. If no parameter is used, the blur is equivalent to Gaussian\n blur of radius 1. Larger values increase the blur.
\n
\n ERODE
\n Reduces the light areas. No parameter is used.
\n
\n DILATE
\n Increases the light areas. No parameter is used.\n\n ", "syntax": ["pimg.filter(kind)", "pimg.filter(kind, param)"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/processing/PImage_get_.json b/content/references/translations/en/processing/PImage_get_.json index 57a058d54..f87490097 100644 --- a/content/references/translations/en/processing/PImage_get_.json +++ b/content/references/translations/en/processing/PImage_get_.json @@ -2,7 +2,7 @@ "brief": "Reads the color of any pixel or grabs a rectangle of pixels", "related": ["PImage_set_", "PImage_pixels", "PImage_copy_"], "name": "get()", - "description": "Reads the color of any pixel or grabs a section of an image. If no\n parameters are specified, the entire image is returned. Use the x\n and y parameters to get the value of one pixel. Get a section of\n the display window by specifying an additional width and\n height parameter. When getting an image, the x and\n y parameters define the coordinates for the upper-left corner of\n the image, regardless of the current imageMode().
\n
\n If the pixel requested is outside of the image window, black is\n returned. The numbers returned are scaled according to the current color\n ranges, but only RGB values are returned by this function. For example,\n even though you may have drawn a shape with colorMode(HSB), the\n numbers returned will be in RGB format.
\n
\n Getting the color of a single pixel with get(x, y) is easy, but\n not as fast as grabbing the data directly from pixels[]. The\n equivalent statement to get(x, y) using pixels[] is\n pixels[y*width+x]. See the reference for pixels[] for more information.\n\n\n ", + "description": "Reads the color of any pixel or grabs a section of an image. If no\n parameters are specified, the entire image is returned. Use the x\n and y parameters to get the value of one pixel. Get a section of\n the display window by specifying an additional width and\n height parameter. When getting an image, the x and\n y parameters define the coordinates for the upper-left corner of\n the image, regardless of the current imageMode().
\n
\n If the pixel requested is outside the image window, black is returned.\n The numbers returned are scaled according to the current color\n ranges, but only RGB values are returned by this function. For example,\n even though you may have drawn a shape with colorMode(HSB), the\n numbers returned will be in RGB format.
\n
\n Getting the color of a single pixel with get(x, y) is easy, but\n not as fast as grabbing the data directly from pixels[]. The\n equivalent statement to get(x, y) using pixels[] is\n pixels[y*width+x]. See the reference for pixels[] for more information.\n\n ", "syntax": ["pimg.get(x, y)", "pimg.get(x, y, w, h)", "pimg.get()"], "returns": "int or PImage", "type": "method", diff --git a/content/references/translations/en/processing/PImage_loadPixels_.json b/content/references/translations/en/processing/PImage_loadPixels_.json index 75d1fd236..553b5bcb8 100644 --- a/content/references/translations/en/processing/PImage_loadPixels_.json +++ b/content/references/translations/en/processing/PImage_loadPixels_.json @@ -2,7 +2,7 @@ "brief": "Loads the pixel data for the image into its pixels[] array", "related": [], "name": "loadPixels()", - "description": "Loads the pixel data of the current display window into the pixels[]\n array. This function must always be called before reading from or writing to\n pixels[]. Subsequent changes to the display window will not be\n reflected in pixels until loadPixels() is called again.\n\n\n ", + "description": "Loads the pixel data of the current display window into the pixels[]\n array. This function must always be called before reading from or writing to\n pixels[]. Subsequent changes to the display window will not be\n reflected in pixels until loadPixels() is called again.\n\n ", "syntax": ["pimg.loadPixels()"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/processing/PImage_mask_.json b/content/references/translations/en/processing/PImage_mask_.json index d9b39e483..a04e612a4 100644 --- a/content/references/translations/en/processing/PImage_mask_.json +++ b/content/references/translations/en/processing/PImage_mask_.json @@ -2,7 +2,7 @@ "brief": "Masks part of an image with another image as an alpha channel", "related": [], "name": "mask()", - "description": "Masks part of an image from displaying by loading another image and\n using it as an alpha channel. This mask image should only contain\n grayscale data, but only the blue color channel is used. The mask image\n needs to be the same size as the image to which it is applied.
\n
\n In addition to using a mask image, an integer array containing the alpha\n channel data can be specified directly. This method is useful for\n creating dynamically generated alpha masks. This array must be of the\n same length as the target image's pixels array and should contain only\n grayscale data of values between 0-255.\n\n\n ", + "description": "Masks part of an image from displaying by loading another image and\n using it as an alpha channel. This mask image should only contain\n grayscale data, but only the blue color channel is used. The mask image\n needs to be the same size as the image to which it is applied.
\n
\n In addition to using a mask image, an integer array containing the alpha\n channel data can be specified directly. This method is useful for\n creating dynamically generated alpha masks. This array must be of the\n same length as the target image's pixels array and should contain only\n grayscale data of values between 0-255.\n\n ", "syntax": ["pimg.mask(maskArray)", "pimg.mask(img)"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/processing/PImage_pixels.json b/content/references/translations/en/processing/PImage_pixels.json index 92ee06173..feb7b51ef 100644 --- a/content/references/translations/en/processing/PImage_pixels.json +++ b/content/references/translations/en/processing/PImage_pixels.json @@ -2,7 +2,7 @@ "brief": "Array containing the color of every pixel in the image", "related": [], "name": "pixels[]", - "description": "The pixels[] array contains the values for all the pixels in the image. These\n values are of the color datatype. This array is the size of the image,\n meaning if the image is 100 x 100 pixels, there will be 10,000 values and if\n the window is 200 x 300 pixels, there will be 60,000 values.
\n
\n Before accessing this array, the data must loaded with the\n loadPixels() method. Failure to do so may result in a\n NullPointerException. After the array data has been modified, the\n updatePixels() method must be run to update the content of the display\n window.", + "description": "The pixels[] array contains the values for all the pixels in the image. These\n values are of the color datatype. This array is the size of the image,\n meaning if the image is 100 x 100 pixels, there will be 10,000 values and if\n the window is 200 x 300 pixels, there will be 60,000 values.
\n
\n Before accessing this array, the data must be loaded with the\n loadPixels() method. Failure to do so may result in a\n NullPointerException. After the array data has been modified, the\n updatePixels() method must be run to update the content of the display\n window.", "syntax": ["pimg.pixels[]\n"], "category": "image", "subcategory": "pixels", diff --git a/content/references/translations/en/processing/PImage_resize_.json b/content/references/translations/en/processing/PImage_resize_.json index 74b88c1e3..fc44c962b 100644 --- a/content/references/translations/en/processing/PImage_resize_.json +++ b/content/references/translations/en/processing/PImage_resize_.json @@ -2,7 +2,7 @@ "brief": "Resize the image to a new width and height", "related": ["PImage_get_"], "name": "resize()", - "description": "Resize the image to a new width and height. To make the image scale\n proportionally, use 0 as the value for the wide or high\n parameter. For instance, to make the width of an image 150 pixels, and\n change the height using the same proportion, use resize(150, 0).
\n
\n Even though a PGraphics is technically a PImage, it is not possible to\n rescale the image data found in a PGraphics. (It's simply not possible\n to do this consistently across renderers: technically infeasible with\n P3D, or what would it even do with PDF?) If you want to resize PGraphics\n content, first get a copy of its image data using the get()\n method, and call resize() on the PImage that is returned.", + "description": "Resize the image to a new width and height. To make the image scale\n proportionally, use 0 as the value for the wide or high\n parameter. For instance, to make the width of an image 150 pixels, and\n change the height using the same proportion, use resize(150, 0).
\n
\n Even though a PGraphics is technically a PImage, it is not possible to\n rescale the image data found in a PGraphics. (It's simply not possible\n to do this consistently across renderers: technically infeasible with\n P3D, or what would it even do with PDF?) If you want to resize PGraphics\n content, first get a copy of its image data using the get()\n method, and call resize() on the PImage that is returned.", "syntax": ["pimg.resize(w, h)"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/processing/PImage_save_.json b/content/references/translations/en/processing/PImage_save_.json index 62e0f4816..b77b095a4 100644 --- a/content/references/translations/en/processing/PImage_save_.json +++ b/content/references/translations/en/processing/PImage_save_.json @@ -2,7 +2,7 @@ "brief": "Saves the image to a TIFF, TARGA, PNG, or JPEG file", "related": [], "name": "save()", - "description": "Saves the image into a file. Append a file extension to the name of\n the file, to indicate the file format to be used: either TIFF (.tif),\n TARGA (.tga), JPEG (.jpg), or PNG (.png). If no extension is included\n in the filename, the image will save in TIFF format and .tif will be\n added to the name. These files are saved to the sketch's folder, which\n may be opened by selecting \"Show sketch folder\" from the \"Sketch\" menu.\n

To save an image created within the code, rather\n than through loading, it's necessary to make the image with the\n createImage() function so it is aware of the location of the\n program and can therefore save the file to the right place. See the\n createImage() reference for more information.\n\n ", + "description": "Saves the image into a file. Append a file extension to the name of\n the file, to indicate the file format to be used: either TIFF (.tif),\n TARGA (.tga), JPEG (.jpg), or PNG (.png). If no extension is included\n in the filename, the image will save in TIFF format and .tif will be\n added to the name. These files are saved to the sketch's folder, which\n may be opened by selecting \"Show sketch folder\" from the \"Sketch\" menu.\n

To save an image created within the code, rather\n than through loading, it's necessary to make the image with the\n createImage() function, so it is aware of the location of the\n program and can therefore save the file to the right place. See the\n createImage() reference for more information.\n\n ", "syntax": ["pimg.save(filename)"], "returns": "boolean", "type": "method", diff --git a/content/references/translations/en/processing/PImage_set_.json b/content/references/translations/en/processing/PImage_set_.json index fe73e9a1f..ac7bb1b81 100644 --- a/content/references/translations/en/processing/PImage_set_.json +++ b/content/references/translations/en/processing/PImage_set_.json @@ -2,7 +2,7 @@ "brief": "Writes a color to any pixel or writes an image into another", "related": ["PImage_get_", "PImage_pixels", "PImage_copy_"], "name": "set()", - "description": "Changes the color of any pixel or writes an image directly into the\n display window.
\n
\n The x and y parameters specify the pixel to change and the\n color parameter specifies the color value. The color parameter is\n affected by the current color mode (the default is RGB values from 0 to\n 255). When setting an image, the x and y parameters define\n the coordinates for the upper-left corner of the image, regardless of\n the current imageMode().\n

\n Setting the color of a single pixel with set(x, y) is easy, but\n not as fast as putting the data directly into pixels[]. The\n equivalent statement to set(x, y, #000000) using pixels[]\n is pixels[y*width+x] = #000000. See the reference for\n pixels[] for more information.", + "description": "Changes the color of any pixel or writes an image directly into the\n display window.
\n
\n The x and y parameters specify the pixel to change and the\n color parameter specifies the color value. The color parameter is\n affected by the current color mode (the default is RGB values from 0 to\n 255). When setting an image, the x and y parameters define\n the coordinates for the upper-left corner of the image, regardless of\n the current imageMode().\n

\n Setting the color of a single pixel with set(x, y) is easy, but\n not as fast as putting the data directly into pixels[]. The\n equivalent statement to set(x, y, #000000) using pixels[]\n is pixels[y*width+x] = #000000. See the reference for\n pixels[] for more information.", "syntax": ["pimg.set(x, y, c)", "pimg.set(x, y, img)"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/processing/PShader.json b/content/references/translations/en/processing/PShader.json index 3eebfd223..3701fe8ec 100644 --- a/content/references/translations/en/processing/PShader.json +++ b/content/references/translations/en/processing/PShader.json @@ -1,5 +1,5 @@ { - "brief": "This class encapsulates a GLSL shader program, including a vertex\n and a fragment shader", + "brief": "This class encapsulates a GLSL shader program,\n including a vertex and a fragment shader", "methods": [ { "anchor": "PShader_set_", @@ -10,7 +10,7 @@ "csspath": "../../", "isLibrary": "true", "classFields": [], - "description": "This class encapsulates a GLSL shader program, including a vertex and a\n fragment shader. It's compatible with the P2D and P3D renderers, but not with\n the default renderer. Use the loadShader() function to load your\n shader code. [Note: It's strongly encouraged to use loadShader() to\n create a PShader object, rather than calling the PShader constructor\n manually.]", + "description": "This class encapsulates a GLSL shader program, including a vertex\n and a fragment shader. It is compatible with P2D and P3D, but not\n with the default renderer.\n\n Use the loadShader() function to load your shader code.\n Note: It's strongly encouraged to use loadShader() to create\n a PShader object, rather than calling the PShader\n constructor manually.", "type": "class", "constructors": [ "PShader()", diff --git a/content/references/translations/en/processing/PShader_set_.json b/content/references/translations/en/processing/PShader_set_.json index 3b2055495..ec39d42ab 100644 --- a/content/references/translations/en/processing/PShader_set_.json +++ b/content/references/translations/en/processing/PShader_set_.json @@ -2,7 +2,7 @@ "brief": "Sets a variable within the shader", "related": [], "name": "set()", - "description": "Sets the uniform variables inside the shader to modify the effect while the \n program is running.", + "description": "Sets the uniform variables inside the shader to modify the effect while the\n program is running.", "syntax": [ ".set(name, x)", ".set(name, x, y)", diff --git a/content/references/translations/en/processing/PShape.json b/content/references/translations/en/processing/PShape.json index e245f6b8f..d752ee755 100644 --- a/content/references/translations/en/processing/PShape.json +++ b/content/references/translations/en/processing/PShape.json @@ -132,7 +132,7 @@ "desc": "Shape document height" } ], - "description": "Datatype for storing shapes. Before a shape is used, it must be loaded with\n the loadShape() or created with the createShape(). The\n shape() function is used to draw the shape to the display window.\n Processing can currently load and display SVG (Scalable Vector Graphics) and\n OBJ shapes. OBJ files can only be opened using the P3D renderer. The\n loadShape() function supports SVG files created with Inkscape and\n Adobe Illustrator. It is not a full SVG implementation, but offers some\n straightforward support for handling vector data.
\n
\n The PShape object contains a group of methods that can operate on the\n shape data. Some of the methods are listed below, but the full list used for\n creating and modifying shapes is\n available\n here in the Processing Javadoc.
\n
\n To create a new shape, use the createShape() function. Do not use the\n syntax new PShape().\n\n ", + "description": "Datatype for storing shapes. Before a shape is used, it must be loaded with\n the loadShape() or created with the createShape(). The\n shape() function is used to draw the shape to the display window.\n Processing can currently load and display SVG (Scalable Vector Graphics) and\n OBJ shapes. OBJ files can only be opened using the P3D renderer. The\n loadShape() function supports SVG files created with Inkscape and\n Adobe Illustrator. It is not a full SVG implementation, but offers some\n straightforward support for handling vector data.
\n
\n The PShape object contains a group of methods that can operate on the\n shape data. Some of the methods are listed below, but the full list used for\n creating and modifying shapes is\n available\n here in the Processing Javadoc.
\n
\n To create a new shape, use the createShape() function. Do not use the\n syntax new PShape().\n\n ", "type": "class", "classanchor": "PShape", "category": "shape", diff --git a/content/references/translations/en/processing/PShape_addChild_.json b/content/references/translations/en/processing/PShape_addChild_.json index d319a246b..32f88729e 100644 --- a/content/references/translations/en/processing/PShape_addChild_.json +++ b/content/references/translations/en/processing/PShape_addChild_.json @@ -2,7 +2,7 @@ "brief": "Adds a new child", "related": ["PShape_getChild_"], "name": "addChild()", - "description": "Adds a child PShape to a parent PShape that is defined as a GROUP. \n In the example, the three shapes path, rectangle, \n and circle are added to a parent PShape variable named \n house that is a GROUP.", + "description": "Adds a child PShape to a parent PShape that is defined as a GROUP.\n In the example, the three shapes path, rectangle,\n and circle are added to a parent PShape variable named\n house that is a GROUP.", "syntax": ["sh.addChild(who)", "sh.addChild(who, idx)"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/processing/PShape_beginContour_.json b/content/references/translations/en/processing/PShape_beginContour_.json index cf90e4fd7..bdb086a45 100644 --- a/content/references/translations/en/processing/PShape_beginContour_.json +++ b/content/references/translations/en/processing/PShape_beginContour_.json @@ -2,7 +2,7 @@ "brief": "Starts a new contour", "related": ["PShape_endContour_"], "name": "beginContour()", - "description": "The beginContour() and endContour() methods make it \n possible to define shapes with other shapes cut out of them. For \n example, the inside of a letter 'O'. These two functions are always \n used together, you'll never use one without the other. Between them, \n define the geometry you want to create. As you'll see when you run \n the example above, the second smaller shape is cut out of the first \n larger shape.
\n
\n The exterior shape and the interior contour must wind in \n opposite directions. This means that if the points of the geometry \n for the exterior shape are described in a clockwise order, the points \n on the interior shape are defined in a counterclockwise order.", + "description": "The beginContour() and endContour() methods make it\n possible to define shapes with other shapes cut out of them. For\n example, the inside of a letter 'O'. These two functions are always\n used together, you'll never use one without the other. Between them,\n define the geometry you want to create. As you'll see when you run\n the example above, the second smaller shape is cut out of the first\n larger shape.
\n
\n The exterior shape and the interior contour must wind in\n opposite directions. This means that if the points of the geometry\n for the exterior shape are described in a clockwise order, the points\n on the interior shape are defined in a counterclockwise order.", "syntax": ["sh.beginContour()"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/processing/PShape_beginShape_.json b/content/references/translations/en/processing/PShape_beginShape_.json index 8b1c7736c..047c33e48 100644 --- a/content/references/translations/en/processing/PShape_beginShape_.json +++ b/content/references/translations/en/processing/PShape_beginShape_.json @@ -2,7 +2,7 @@ "brief": "Starts the creation of a new PShape", "related": ["PShape_endShape_"], "name": "beginShape()", - "description": "This method is used to start a custom shape created with the createShape() \n function. It's always and only used with createShape().", + "description": "This method is used to start a custom shape created with the createShape()\n function. It's always and only used with createShape().", "syntax": ["sh.beginShape()", "sh.beginShape(kind)"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/processing/PShape_endContour_.json b/content/references/translations/en/processing/PShape_endContour_.json index 950de29f2..66659f958 100644 --- a/content/references/translations/en/processing/PShape_endContour_.json +++ b/content/references/translations/en/processing/PShape_endContour_.json @@ -2,7 +2,7 @@ "brief": "Ends a contour", "related": ["PShape_beginContour_"], "name": "endContour()", - "description": "The beginContour() and endContour() methods make \n it possible to define shapes with other shapes cut out of them. \n For example, the inside of a letter 'O'. These two functions are \n always used together, you'll never use one without the other. \n Between them, define the geometry you want to create. As you'll \n see when you run the example above, the second smaller shape is \n cut out of the first larger shape.
\n
\n The exterior shape and the interior contour must wind \n in opposite directions. This means that if the points of the \n geometry for the exterior shape are described in a clockwise order, \n the points on the interior shape are defined in a counterclockwise order.", + "description": "The beginContour() and endContour() methods make\n it possible to define shapes with other shapes cut out of them.\n For example, the inside of a letter 'O'. These two functions are\n always used together, you'll never use one without the other.\n Between them, define the geometry you want to create. As you'll\n see when you run the example above, the second smaller shape is\n cut out of the first larger shape.
\n
\n The exterior shape and the interior contour must wind\n in opposite directions. This means that if the points of the\n geometry for the exterior shape are described in a clockwise order,\n the points on the interior shape are defined in a counterclockwise order.", "syntax": ["sh.endContour()"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/processing/PShape_endShape_.json b/content/references/translations/en/processing/PShape_endShape_.json index aa273f528..7698c95af 100644 --- a/content/references/translations/en/processing/PShape_endShape_.json +++ b/content/references/translations/en/processing/PShape_endShape_.json @@ -2,7 +2,7 @@ "brief": "Finishes the creation of a new PShape", "related": ["PShape_beginShape_"], "name": "endShape()", - "description": "This method is used to complete a custom shape created with the createShape() \n function. It's always and only used with createShape().", + "description": "This method is used to complete a custom shape created with the createShape()\n function. It's always and only used with createShape().", "syntax": ["sh.endShape()", "sh.endShape(mode)"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/processing/PShape_getVertexCount_.json b/content/references/translations/en/processing/PShape_getVertexCount_.json index 27a79e0bf..7cef0c6a7 100644 --- a/content/references/translations/en/processing/PShape_getVertexCount_.json +++ b/content/references/translations/en/processing/PShape_getVertexCount_.json @@ -2,7 +2,7 @@ "brief": "Returns the total number of vertices as an int", "related": ["PShape_getVertex_", "PShape_setVertex_"], "name": "getVertexCount()", - "description": "The getVertexCount() method returns the number of vertices that \n make up a PShape. In the above example, the value 4 is returned by the \n getVertexCount() method because 4 vertices are defined in \n setup().", + "description": "The getVertexCount() method returns the number of vertices that\n make up a PShape. In the above example, the value 4 is returned by the\n getVertexCount() method because 4 vertices are defined in\n setup().", "syntax": ["sh.getVertexCount()"], "returns": "int", "type": "method", diff --git a/content/references/translations/en/processing/PShape_getVertex_.json b/content/references/translations/en/processing/PShape_getVertex_.json index 6b1429d7c..1c7453020 100644 --- a/content/references/translations/en/processing/PShape_getVertex_.json +++ b/content/references/translations/en/processing/PShape_getVertex_.json @@ -2,7 +2,7 @@ "brief": "Returns the vertex at the index position", "related": ["PShape_setVertex_", "PShape_getVertexCount_"], "name": "getVertex()", - "description": "The getVertex() method returns a PVector with the coordinates of \n the vertex point located at the position defined by the index \n parameter. This method works when shapes are created as shown in the \n example above, but won't work properly when a shape is defined explicitly \n (e.g. createShape(RECT, 20, 20, 80, 80).", + "description": "The getVertex() method returns a PVector with the coordinates of\n the vertex point located at the position defined by the index\n parameter. This method works when shapes are created as shown in the\n example above, but won't work properly when a shape is defined explicitly\n (e.g. createShape(RECT, 20, 20, 80, 80).", "syntax": ["sh.getVertex(index)", "sh.getVertex(index, vec)"], "returns": "PVector", "type": "method", diff --git a/content/references/translations/en/processing/PShape_isVisible_.json b/content/references/translations/en/processing/PShape_isVisible_.json index ce00d5c87..2fd9c4de0 100644 --- a/content/references/translations/en/processing/PShape_isVisible_.json +++ b/content/references/translations/en/processing/PShape_isVisible_.json @@ -2,7 +2,7 @@ "brief": "Returns a boolean value true if the image is set to be visible,\n false if not", "related": ["PShape_setVisible_"], "name": "isVisible()", - "description": "Returns a boolean value true if the image is set to be visible, false if\n not. This value can be modified with the setVisible() method.
\n
\n The default visibility of a shape is usually controlled by whatever program\n created the SVG file. For instance, this parameter is controlled by showing\n or hiding the shape in the layers palette in Adobe Illustrator.", + "description": "Returns a boolean value true if the image is set to be visible, false if\n not. This value can be modified with the setVisible() method.
\n
\n The default visibility of a shape is usually controlled by whatever program\n created the SVG file. For instance, this parameter is controlled by showing\n or hiding the shape in the layers palette in Adobe Illustrator.", "syntax": ["sh.isVisible()"], "returns": "boolean", "type": "method", diff --git a/content/references/translations/en/processing/PShape_rotateX_.json b/content/references/translations/en/processing/PShape_rotateX_.json index 83744d74a..d3b730a28 100644 --- a/content/references/translations/en/processing/PShape_rotateX_.json +++ b/content/references/translations/en/processing/PShape_rotateX_.json @@ -9,7 +9,7 @@ "PShape_resetMatrix_" ], "name": "rotateX()", - "description": "Rotates a shape around the x-axis the amount specified by the\n angle parameter. Angles should be specified in radians (values\n from 0 to TWO_PI) or converted to radians with the radians() method.\n

\n Shapes are always rotated around the upper-left corner of their bounding\n box. Positive numbers rotate objects in a clockwise direction.\n Subsequent calls to the method accumulates the effect. For example,\n calling rotateX(HALF_PI) and then rotateX(HALF_PI) is the\n same as rotateX(PI). This transformation is applied directly to\n the shape, it's not refreshed each time draw() is run.\n

\n This method requires a 3D renderer. You need to use P3D as a third\n parameter for the size() function as shown in the example above.", + "description": "Rotates a shape around the x-axis the amount specified by the\n angle parameter. Angles should be specified in radians (values\n from 0 to TWO_PI) or converted to radians with the radians() method.\n

\n Shapes are always rotated around the upper-left corner of their bounding\n box. Positive numbers rotate objects in a clockwise direction.\n Subsequent calls to the method accumulates the effect. For example,\n calling rotateX(HALF_PI) and then rotateX(HALF_PI) is the\n same as rotateX(PI). This transformation is applied directly to\n the shape, it's not refreshed each time draw() is run.\n

\n This method requires a 3D renderer. You need to use P3D as a third\n parameter for the size() function as shown in the example above.", "syntax": ["sh.rotateX(angle)"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/processing/PShape_rotateY_.json b/content/references/translations/en/processing/PShape_rotateY_.json index 64518c781..a4d7030f3 100644 --- a/content/references/translations/en/processing/PShape_rotateY_.json +++ b/content/references/translations/en/processing/PShape_rotateY_.json @@ -9,7 +9,7 @@ "PShape_resetMatrix_" ], "name": "rotateY()", - "description": "Rotates a shape around the y-axis the amount specified by the\n angle parameter. Angles should be specified in radians (values\n from 0 to TWO_PI) or converted to radians with the radians() method.\n

\n Shapes are always rotated around the upper-left corner of their bounding\n box. Positive numbers rotate objects in a clockwise direction.\n Subsequent calls to the method accumulates the effect. For example,\n calling rotateY(HALF_PI) and then rotateY(HALF_PI) is the\n same as rotateY(PI). This transformation is applied directly to\n the shape, it's not refreshed each time draw() is run.\n

\n This method requires a 3D renderer. You need to use P3D as a third\n parameter for the size() function as shown in the example above.", + "description": "Rotates a shape around the y-axis the amount specified by the\n angle parameter. Angles should be specified in radians (values\n from 0 to TWO_PI) or converted to radians with the radians() method.\n

\n Shapes are always rotated around the upper-left corner of their bounding\n box. Positive numbers rotate objects in a clockwise direction.\n Subsequent calls to the method accumulates the effect. For example,\n calling rotateY(HALF_PI) and then rotateY(HALF_PI) is the\n same as rotateY(PI). This transformation is applied directly to\n the shape, it's not refreshed each time draw() is run.\n

\n This method requires a 3D renderer. You need to use P3D as a third\n parameter for the size() function as shown in the example above.", "syntax": ["sh.rotateY(angle)"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/processing/PShape_rotateZ_.json b/content/references/translations/en/processing/PShape_rotateZ_.json index 7a2eaf1be..04513809f 100644 --- a/content/references/translations/en/processing/PShape_rotateZ_.json +++ b/content/references/translations/en/processing/PShape_rotateZ_.json @@ -9,7 +9,7 @@ "PShape_resetMatrix_" ], "name": "rotateZ()", - "description": "Rotates a shape around the z-axis the amount specified by the\n angle parameter. Angles should be specified in radians (values\n from 0 to TWO_PI) or converted to radians with the radians() method.\n

\n Shapes are always rotated around the upper-left corner of their bounding\n box. Positive numbers rotate objects in a clockwise direction.\n Subsequent calls to the method accumulates the effect. For example,\n calling rotateZ(HALF_PI) and then rotateZ(HALF_PI) is the\n same as rotateZ(PI). This transformation is applied directly to\n the shape, it's not refreshed each time draw() is run.\n

\n This method requires a 3D renderer. You need to use P3D as a third\n parameter for the size() function as shown in the example above.", + "description": "Rotates a shape around the z-axis the amount specified by the\n angle parameter. Angles should be specified in radians (values\n from 0 to TWO_PI) or converted to radians with the radians() method.\n

\n Shapes are always rotated around the upper-left corner of their bounding\n box. Positive numbers rotate objects in a clockwise direction.\n Subsequent calls to the method accumulates the effect. For example,\n calling rotateZ(HALF_PI) and then rotateZ(HALF_PI) is the\n same as rotateZ(PI). This transformation is applied directly to\n the shape, it's not refreshed each time draw() is run.\n

\n This method requires a 3D renderer. You need to use P3D as a third\n parameter for the size() function as shown in the example above.", "syntax": ["sh.rotateZ(angle)"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/processing/PShape_rotate_.json b/content/references/translations/en/processing/PShape_rotate_.json index a6c1773cb..36ff4a21d 100644 --- a/content/references/translations/en/processing/PShape_rotate_.json +++ b/content/references/translations/en/processing/PShape_rotate_.json @@ -9,7 +9,7 @@ "PShape_resetMatrix_" ], "name": "rotate()", - "description": "Rotates a shape the amount specified by the angle parameter.\n Angles should be specified in radians (values from 0 to TWO_PI) or\n converted to radians with the radians() method.\n

\n Shapes are always rotated around the upper-left corner of their bounding\n box. Positive numbers rotate objects in a clockwise direction.\n Transformations apply to everything that happens after and subsequent\n calls to the method accumulates the effect. For example, calling\n rotate(HALF_PI) and then rotate(HALF_PI) is the same as\n rotate(PI). This transformation is applied directly to the shape,\n it's not refreshed each time draw() is run.", + "description": "Rotates a shape the amount specified by the angle parameter.\n Angles should be specified in radians (values from 0 to TWO_PI) or\n converted to radians with the radians() method.\n

\n Shapes are always rotated around the upper-left corner of their bounding\n box. Positive numbers rotate objects in a clockwise direction.\n Transformations apply to everything that happens after and subsequent\n calls to the method accumulates the effect. For example, calling\n rotate(HALF_PI) and then rotate(HALF_PI) is the same as\n rotate(PI). This transformation is applied directly to the shape,\n it's not refreshed each time draw() is run.", "syntax": ["sh.rotate(angle)"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/processing/PShape_scale_.json b/content/references/translations/en/processing/PShape_scale_.json index 574e4b252..a00537cc3 100644 --- a/content/references/translations/en/processing/PShape_scale_.json +++ b/content/references/translations/en/processing/PShape_scale_.json @@ -2,7 +2,7 @@ "brief": "Increases and decreases the size of a shape", "related": ["PShape_rotate_", "PShape_translate_", "PShape_resetMatrix_"], "name": "scale()", - "description": "Increases or decreases the size of a shape by expanding and contracting\n vertices. Shapes always scale from the relative origin of their bounding\n box. Scale values are specified as decimal percentages. For example, the\n method call scale(2.0) increases the dimension of a shape by\n 200%. Subsequent calls to the method multiply the effect. For example,\n calling scale(2.0) and then scale(1.5) is the same as\n scale(3.0). This transformation is applied directly to the shape,\n it's not refreshed each time draw() is run.\n

\n Using this method with the z parameter requires using the P3D\n parameter in combination with size.", + "description": "Increases or decreases the size of a shape by expanding and contracting\n vertices. Shapes always scale from the relative origin of their bounding\n box. Scale values are specified as decimal percentages. For example, the\n method call scale(2.0) increases the dimension of a shape by\n 200%. Subsequent calls to the method multiply the effect. For example,\n calling scale(2.0) and then scale(1.5) is the same as\n scale(3.0). This transformation is applied directly to the shape,\n it's not refreshed each time draw() is run.\n

\n Using this method with the z parameter requires using the P3D\n parameter in combination with size.", "syntax": ["sh.scale(s)", "sh.scale(x, y)", "sh.scale(x, y, z)"], "returns": "void", "type": "method", @@ -17,7 +17,7 @@ }, { "name": "s", - "description": "percentate to scale the object", + "description": "percentage to scale the object", "type": ["float"] }, { diff --git a/content/references/translations/en/processing/PShape_setVertex_.json b/content/references/translations/en/processing/PShape_setVertex_.json index 93620fa18..90e9931c4 100644 --- a/content/references/translations/en/processing/PShape_setVertex_.json +++ b/content/references/translations/en/processing/PShape_setVertex_.json @@ -2,7 +2,7 @@ "brief": "Sets the vertex at the index position", "related": ["PShape_getVertex_", "PShape_getVertexCount_"], "name": "setVertex()", - "description": "The setVertex() method defines the coordinates of the vertex point \n located at the position defined by the index parameter. This method \n works when shapes are created as shown in the example above, but won't work \n properly when a shape is defined explicitly (e.g. createShape(RECT, 20, 20, 80, 80).", + "description": "The setVertex() method defines the coordinates of the vertex point\n located at the position defined by the index parameter. This method\n works when shapes are created as shown in the example above, but won't work\n properly when a shape is defined explicitly (e.g. createShape(RECT, 20, 20, 80, 80).", "syntax": [ "sh.setVertex(index, x, y)", "sh.setVertex(index, x, y, z)", diff --git a/content/references/translations/en/processing/PShape_setVisible_.json b/content/references/translations/en/processing/PShape_setVisible_.json index 62dab658e..098757251 100644 --- a/content/references/translations/en/processing/PShape_setVisible_.json +++ b/content/references/translations/en/processing/PShape_setVisible_.json @@ -2,7 +2,7 @@ "brief": "Sets the shape to be visible or invisible", "related": ["PShape_isVisible_"], "name": "setVisible()", - "description": "Sets the shape to be visible or invisible. This is determined by the value of\n the visible parameter.
\n
\n The default visibility of a shape is usually controlled by whatever program\n created the SVG file. For instance, this parameter is controlled by showing\n or hiding the shape in the layers palette in Adobe Illustrator.", + "description": "Sets the shape to be visible or invisible. This is determined by the value of\n the visible parameter.
\n
\n The default visibility of a shape is usually controlled by whatever program\n created the SVG file. For instance, this parameter is controlled by showing\n or hiding the shape in the layers palette in Adobe Illustrator.", "syntax": ["sh.setVisible(visible)"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/processing/PShape_translate_.json b/content/references/translations/en/processing/PShape_translate_.json index 50bcd6075..c67d5d2aa 100644 --- a/content/references/translations/en/processing/PShape_translate_.json +++ b/content/references/translations/en/processing/PShape_translate_.json @@ -2,7 +2,7 @@ "brief": "Displaces the shape", "related": ["PShape_rotate_", "PShape_scale_", "PShape_resetMatrix_"], "name": "translate()", - "description": "Specifies an amount to displace the shape. The x parameter\n specifies left/right translation, the y parameter specifies\n up/down translation, and the z parameter specifies translations\n toward/away from the screen. Subsequent calls to the method accumulates\n the effect. For example, calling translate(50, 0) and then\n translate(20, 0) is the same as translate(70, 0). This\n transformation is applied directly to the shape, it's not refreshed each\n time draw() is run.\n

\n Using this method with the z parameter requires using the P3D\n parameter in combination with size.", + "description": "Specifies an amount to displace the shape. The x parameter\n specifies left/right translation, the y parameter specifies\n up/down translation, and the z parameter specifies translations\n toward/away from the screen. Subsequent calls to the method accumulates\n the effect. For example, calling translate(50, 0) and then\n translate(20, 0) is the same as translate(70, 0). This\n transformation is applied directly to the shape, it's not refreshed each\n time draw() is run.\n

\n Using this method with the z parameter requires using the P3D\n parameter in combination with size.", "syntax": ["sh.translate(x, y)", "sh.translate(x, y, z)"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/processing/PVector.json b/content/references/translations/en/processing/PVector.json index 57b5f111b..f5f0f94f9 100644 --- a/content/references/translations/en/processing/PVector.json +++ b/content/references/translations/en/processing/PVector.json @@ -93,6 +93,11 @@ "name": "heading()", "desc": "Calculate the angle of rotation for this vector" }, + { + "anchor": "PVector_setHeading_", + "name": "setHeading()", + "desc": "Set the direction for this vector" + }, { "anchor": "PVector_rotate_", "name": "rotate()", @@ -132,7 +137,7 @@ "desc": "The z component of the vector" } ], - "description": "A class to describe a two or three dimensional vector, specifically a\n Euclidean (also known as geometric) vector. A vector is an entity that has\n both magnitude and direction. The datatype, however, stores the components of\n the vector (x,y for 2D, and x,y,z for 3D). The magnitude and direction can be\n accessed via the methods mag() and heading().
\n
\n In many of the Processing examples, you will see PVector used to\n describe a position, velocity, or acceleration. For example, if you consider\n a rectangle moving across the screen, at any given instant it has a position\n (a vector that points from the origin to its location), a velocity (the rate\n at which the object's position changes per time unit, expressed as a vector),\n and acceleration (the rate at which the object's velocity changes per time\n unit, expressed as a vector). Since vectors represent groupings of values, we\n cannot simply use traditional addition/multiplication/etc. Instead, we'll\n need to do some \"vector\" math, which is made easy by the methods inside the\n PVector class.\n\n ", + "description": "A class to describe a two or three dimensional vector, specifically a\n Euclidean (also known as geometric) vector. A vector is an entity that has\n both magnitude and direction. The datatype, however, stores the components of\n the vector (x,y for 2D, and x,y,z for 3D). The magnitude and direction can be\n accessed via the methods mag() and heading().
\n
\n In many of the Processing examples, you will see PVector used to\n describe a position, velocity, or acceleration. For example, if you consider\n a rectangle moving across the screen, at any given instant it has a position\n (a vector that points from the origin to its location), a velocity (the rate\n at which the object's position changes per time unit, expressed as a vector),\n and acceleration (the rate at which the object's velocity changes per time\n unit, expressed as a vector). Since vectors represent groupings of values, we\n cannot simply use traditional addition/multiplication/etc. Instead, we'll\n need to do some \"vector\" math, which is made easy by the methods inside the\n PVector class.\n\n ", "type": "class", "classanchor": "PVector", "category": "math", diff --git a/content/references/translations/en/processing/PVector_heading_.json b/content/references/translations/en/processing/PVector_heading_.json index 064400b42..37ddbd6c4 100644 --- a/content/references/translations/en/processing/PVector_heading_.json +++ b/content/references/translations/en/processing/PVector_heading_.json @@ -2,12 +2,18 @@ "brief": "Calculate the angle of rotation for this vector", "related": [], "name": "heading()", - "description": "Calculate the angle of rotation for this vector (only 2D vectors)", - "syntax": [".heading()"], + "description": "Calculate the vector's direction, that is, the angle this vector makes\n with the positive X axis (only 2D vectors)", + "syntax": ["myPVector.heading()"], "returns": "float", "type": "method", "category": "pvector", "subcategory": "method", "classanchor": "PVector", - "parameters": [] + "parameters": [ + { + "name": "myPVector", + "description": "your PVector object", + "type": ["PVector"] + } + ] } diff --git a/content/references/translations/en/processing/PVector_lerp_.json b/content/references/translations/en/processing/PVector_lerp_.json index 9110c9092..b71ced8ac 100644 --- a/content/references/translations/en/processing/PVector_lerp_.json +++ b/content/references/translations/en/processing/PVector_lerp_.json @@ -2,7 +2,7 @@ "brief": "Linear interpolate the vector to another vector", "related": ["PVector_lerp_"], "name": "lerp()", - "description": "Calculates linear interpolation from one vector to another vector. (Just like\n regular lerp(), but for vectors.)
\n
\n Note that there is one static version of this method, and two\n non-static versions. The static version, lerp(v1, v2, amt) is\n given the two vectors to interpolate and returns a new PVector object. The\n static version is used by referencing the PVector class directly. (See the\n middle example above.) The non-static versions, lerp(v, amt) and\n lerp(x, y, z, amt), do not create a new PVector, but transform the\n values of the PVector on which they are called. These non-static versions\n perform the same operation, but the former takes another vector as input,\n while the latter takes three float values. (See the top and bottom examples\n above, respectively.)", + "description": "Calculates linear interpolation from one vector to another vector. (Just like\n regular lerp(), but for vectors.)
\n
\n Note that there is one static version of this method, and two\n non-static versions. The static version, lerp(v1, v2, amt) is\n given the two vectors to interpolate and returns a new PVector object. The\n static version is used by referencing the PVector class directly. (See the\n middle example above.) The non-static versions, lerp(v, amt) and\n lerp(x, y, z, amt), do not create a new PVector, but transform the\n values of the PVector on which they are called. These non-static versions\n perform the same operation, but the former takes another vector as input,\n while the latter takes three float values. (See the top and bottom examples\n above, respectively.)", "syntax": [".lerp(v, amt)", ".lerp(v1, v2, amt)", ".lerp(x, y, z, amt)"], "returns": "PVector", "type": "method", diff --git a/content/references/translations/en/processing/PVector_setHeading_.json b/content/references/translations/en/processing/PVector_setHeading_.json new file mode 100644 index 000000000..a4f3d275a --- /dev/null +++ b/content/references/translations/en/processing/PVector_setHeading_.json @@ -0,0 +1,24 @@ +{ + "brief": "Set the direction for this vector", + "related": ["PVector_heading_"], + "name": "setHeading()", + "description": "Sets the angle this vector makes with the positive X axis (only 2D vectors)\n This is equivalent to changing the vector's direction to the given value.", + "syntax": ["myPVector.setHeading(angle)"], + "returns": "PVector", + "type": "method", + "category": "pvector", + "subcategory": "method", + "classanchor": "PVector", + "parameters": [ + { + "name": "myPVector", + "description": "your PVector object", + "type": ["PVector"] + }, + { + "name": "angle", + "description": "the direction of the resultant vector", + "type": ["float"] + } + ] +} diff --git a/content/references/translations/en/processing/StringDict_keys_.json b/content/references/translations/en/processing/StringDict_keys_.json index 3d9210f8f..50a38a4d8 100644 --- a/content/references/translations/en/processing/StringDict_keys_.json +++ b/content/references/translations/en/processing/StringDict_keys_.json @@ -4,7 +4,7 @@ "name": "keys()", "description": "Return the internal array being used to store the keys.", "syntax": [".keys()"], - "returns": "Iterable", + "returns": "Iterable<String>", "type": "method", "category": "stringdict", "subcategory": "method", diff --git a/content/references/translations/en/processing/StringDict_values_.json b/content/references/translations/en/processing/StringDict_values_.json index 6ca1b91cc..70a6d8c55 100644 --- a/content/references/translations/en/processing/StringDict_values_.json +++ b/content/references/translations/en/processing/StringDict_values_.json @@ -4,7 +4,7 @@ "name": "values()", "description": "Return the internal array being used to store the values", "syntax": [".values()"], - "returns": "Iterable", + "returns": "Iterable<String>", "type": "method", "category": "stringdict", "subcategory": "method", diff --git a/content/references/translations/en/processing/StringList.json b/content/references/translations/en/processing/StringList.json index adf3af6f0..4a059651c 100644 --- a/content/references/translations/en/processing/StringList.json +++ b/content/references/translations/en/processing/StringList.json @@ -67,15 +67,15 @@ "desc": "Make the entire list upper case" }, { - "anchor": "StringList_array_", - "name": "array()", + "anchor": "StringList_toArray_", + "name": "toArray()", "desc": "Create a new array with a copy of all the values" } ], "csspath": "../../", "isLibrary": "true", "classFields": [], - "description": "Helper class for a list of Strings. Lists are designed to have some of the\n features of ArrayLists, but to maintain the simplicity and efficiency of\n working with arrays.\n\n Functions like sort() and shuffle() always act on the list itself. To get\n a sorted copy, use list.copy().sort().", + "description": "Helper class for a list of String objects. Lists are designed\n to have some features of ArrayList, but to maintain the\n simplicity and efficiency of working with arrays.\n Functions such as sort() and shuffle() always act on\n the list itself. To get a sorted copy, use list.copy().sort().", "type": "class", "constructors": ["StringList()"], "related": ["IntList", "FloatList"], diff --git a/content/references/translations/en/processing/StringList_toArray_.json b/content/references/translations/en/processing/StringList_toArray_.json new file mode 100644 index 000000000..d353b0cd4 --- /dev/null +++ b/content/references/translations/en/processing/StringList_toArray_.json @@ -0,0 +1,13 @@ +{ + "brief": "Create a new array with a copy of all the values", + "related": [], + "name": "toArray()", + "description": "Create a new array with a copy of all the values.", + "syntax": [".toArray()", ".toArray(array)"], + "returns": "String[]", + "type": "method", + "category": "stringlist", + "subcategory": "method", + "classanchor": "StringList", + "parameters": [] +} diff --git a/content/references/translations/en/processing/Table.json b/content/references/translations/en/processing/Table.json index dfe391314..00b7077a4 100644 --- a/content/references/translations/en/processing/Table.json +++ b/content/references/translations/en/processing/Table.json @@ -125,7 +125,7 @@ "csspath": "../../", "isLibrary": "true", "classFields": [], - "description": "Table objects store data with multiple rows and columns, much like in\n a traditional spreadsheet. Tables can be generated from scratch, dynamically,\n or using data from an existing file. Tables can also be output and saved to\n disk, as in the example above.
\n
\n Additional Table methods are documented in the Processing\n Table Javadoc.\n\n ", + "description": "Table objects store data with multiple rows and columns, much like in\n a traditional spreadsheet. Tables can be generated from scratch, dynamically,\n or using data from an existing file. Tables can also be output and saved to\n disk, as in the example above.
\n
\n Additional Table methods are documented in the Processing\n Table Javadoc.\n\n ", "type": "class", "constructors": ["Table()", "Table(rows)"], "related": ["loadTable_", "saveTable_", "TableRow"], diff --git a/content/references/translations/en/processing/TableRow.json b/content/references/translations/en/processing/TableRow.json index 8117e0a2a..2210f5ff9 100644 --- a/content/references/translations/en/processing/TableRow.json +++ b/content/references/translations/en/processing/TableRow.json @@ -45,7 +45,7 @@ "csspath": "../../", "isLibrary": "true", "classFields": [], - "description": "A TableRow object represents a single row of data values, \n stored in columns, from a Table.
\n
\n Additional TableRow methods are documented in the \n Processing Data Javadoc.", + "description": "A TableRow object represents a single row of data values, \n stored in columns, from a Table.
\n
\n Additional TableRow methods are documented in the \n Processing Data Javadoc.", "type": "class", "constructors": [], "related": [ diff --git a/content/references/translations/en/processing/Table_findRows_.json b/content/references/translations/en/processing/Table_findRows_.json index 2a4efa546..e88eb738a 100644 --- a/content/references/translations/en/processing/Table_findRows_.json +++ b/content/references/translations/en/processing/Table_findRows_.json @@ -10,7 +10,7 @@ "name": "findRows()", "description": "Finds the rows in the Table that contain the value provided,\n and returns references to those rows. Returns an iterator, so for\n must be used to iterate through all the rows, as shown in the example above.\n The column to search may be specified by either its ID or title.", "syntax": [".findRows(value, column)", ".findRows(value, columnName)"], - "returns": "Iterable", + "returns": "Iterable<TableRow>", "type": "method", "category": "table", "subcategory": "method", diff --git a/content/references/translations/en/processing/Table_matchRowIterator_.json b/content/references/translations/en/processing/Table_matchRowIterator_.json index 7ba9a3e37..6494c9e31 100644 --- a/content/references/translations/en/processing/Table_matchRowIterator_.json +++ b/content/references/translations/en/processing/Table_matchRowIterator_.json @@ -7,7 +7,7 @@ ".matchRowIterator(value, column)", ".matchRowIterator(value, columnName)" ], - "returns": "Iterator", + "returns": "Iterator<TableRow>", "type": "method", "category": "table", "subcategory": "method", diff --git a/content/references/translations/en/processing/Table_matchRows_.json b/content/references/translations/en/processing/Table_matchRows_.json index 68b9bda1a..e9aacdb1f 100644 --- a/content/references/translations/en/processing/Table_matchRows_.json +++ b/content/references/translations/en/processing/Table_matchRows_.json @@ -10,7 +10,7 @@ "name": "matchRows()", "description": "Finds the rows in the Table that match the regular expression provided,\n and returns references to those rows. Returns an iterator, so for\n must be used to iterate through all the rows, as shown in the example above.\n The column to search may be specified by either its ID or title.", "syntax": [".matchRows(regexp, column)", ".matchRows(regexp, columnName)"], - "returns": "Iterable", + "returns": "Iterable<TableRow>", "type": "method", "category": "table", "subcategory": "method", diff --git a/content/references/translations/en/processing/Table_removeTokens_.json b/content/references/translations/en/processing/Table_removeTokens_.json index a13c4ed39..58a8e2058 100644 --- a/content/references/translations/en/processing/Table_removeTokens_.json +++ b/content/references/translations/en/processing/Table_removeTokens_.json @@ -2,7 +2,7 @@ "brief": "Removes characters from the table", "related": ["Table_trim_"], "name": "removeTokens()", - "description": "Removes any of the specified characters (or \"tokens\"). The example above\n removes all commas, dollar signs, and spaces from the table.
\n
\n If no column is specified, then the values in all columns and rows are\n processed. A specific column may be referenced by either its ID or title.", + "description": "Removes any of the specified characters (or \"tokens\"). The example above\n removes all commas, dollar signs, and spaces from the table.
\n
\n If no column is specified, then the values in all columns and rows are\n processed. A specific column may be referenced by either its ID or title.", "syntax": [ ".removeTokens(tokens)", ".removeTokens(tokens, column)", diff --git a/content/references/translations/en/processing/Table_rows_.json b/content/references/translations/en/processing/Table_rows_.json index 141285f52..88011dda8 100644 --- a/content/references/translations/en/processing/Table_rows_.json +++ b/content/references/translations/en/processing/Table_rows_.json @@ -10,7 +10,7 @@ "name": "rows()", "description": "Gets all rows from the table. Returns an iterator, so for must be\n used to iterate through all the rows, as shown in the example above.", "syntax": [".rows()"], - "returns": "Iterable", + "returns": "Iterable<TableRow>", "type": "method", "category": "table", "subcategory": "method", diff --git a/content/references/translations/en/processing/XML.json b/content/references/translations/en/processing/XML.json index e09ec65be..6afaf7c90 100644 --- a/content/references/translations/en/processing/XML.json +++ b/content/references/translations/en/processing/XML.json @@ -135,7 +135,7 @@ "csspath": "../../", "isLibrary": "true", "classFields": [], - "description": "XML is a representation of an XML object, able to parse XML code. Use\n loadXML() to load external XML files and create XML\n objects.
\n
\n Only files encoded as UTF-8 (or plain ASCII) are parsed properly; the\n encoding parameter inside XML files is ignored.", + "description": "XML is a representation of an XML object, able to parse XML code. Use\n loadXML() to load external XML files and create XML\n objects.
\n
\n Only files encoded as UTF-8 (or plain ASCII) are parsed properly; the\n encoding parameter inside XML files is ignored.", "type": "class", "constructors": ["XML(name)"], "related": ["loadXML_", "parseXML_", "saveXML_"], diff --git a/content/references/translations/en/processing/XML_addChild_.json b/content/references/translations/en/processing/XML_addChild_.json index 73cf6af7f..72d561a1d 100644 --- a/content/references/translations/en/processing/XML_addChild_.json +++ b/content/references/translations/en/processing/XML_addChild_.json @@ -2,7 +2,7 @@ "brief": "Appends a new child to the element", "related": [], "name": "addChild()", - "description": "Appends a new child to the element. The child can be specified with either a\n String, which will be used as the new tag's name, or as a reference to an\n existing XML object.
\n
\n A reference to the newly created child is returned as an XML object.", + "description": "Appends a new child to the element. The child can be specified with either a\n String, which will be used as the new tag's name, or as a reference to an\n existing XML object.
\n
\n A reference to the newly created child is returned as an XML object.", "syntax": [".addChild(tag)", ".addChild(child)"], "returns": "XML", "type": "method", diff --git a/content/references/translations/en/processing/XML_format_.json b/content/references/translations/en/processing/XML_format_.json index 19bfb4c9f..5f3816627 100644 --- a/content/references/translations/en/processing/XML_format_.json +++ b/content/references/translations/en/processing/XML_format_.json @@ -2,7 +2,7 @@ "brief": "Formats XML data as a String", "related": ["XML_toString_"], "name": "format()", - "description": "Takes an XML object and converts it to a String, formatting its content as\n specified with the indent parameter.
\n
\n If indent is set to -1, then the String is returned with no line breaks, no\n indentation, and no XML declaration.
\n
\n If indent is set to 0 or greater, then the String is returned with line\n breaks, and the specified number of spaces as indent values. Meaning, there\n will be no indentation if 0 is specified, or each indent will be replaced\n with the corresponding number of spaces: 1, 2, 3, and so on.", + "description": "Takes an XML object and converts it to a String, formatting its content as\n specified with the indent parameter.
\n
\n If indent is set to -1, then the String is returned with no line breaks, no\n indentation, and no XML declaration.
\n
\n If indent is set to 0 or greater, then the String is returned with line\n breaks, and the specified number of spaces as indent values. Meaning, there\n will be no indentation if 0 is specified, or each indent will be replaced\n with the corresponding number of spaces: 1, 2, 3, and so on.", "syntax": [".format(indent)"], "returns": "String", "type": "method", diff --git a/content/references/translations/en/processing/applyMatrix_.json b/content/references/translations/en/processing/applyMatrix_.json index 196ffd38b..171453c54 100644 --- a/content/references/translations/en/processing/applyMatrix_.json +++ b/content/references/translations/en/processing/applyMatrix_.json @@ -1,5 +1,5 @@ { - "brief": "Multiplies the current matrix by the one specified through the\n parameters", + "brief": "Multiplies the current matrix by the one specified in the\n parameter", "related": ["pushMatrix_", "popMatrix_", "resetMatrix_", "printMatrix_"], "name": "applyMatrix()", "description": "Multiplies the current matrix by the one specified through the\n parameters. This is very slow because it will try to calculate the\n inverse of the transform, so avoid it whenever possible. The equivalent\n function in OpenGL is glMultMatrix().", diff --git a/content/references/translations/en/processing/arc_.json b/content/references/translations/en/processing/arc_.json index d7c85f48b..12eb7dc87 100644 --- a/content/references/translations/en/processing/arc_.json +++ b/content/references/translations/en/processing/arc_.json @@ -2,7 +2,7 @@ "brief": "Draws an arc in the display window", "related": ["ellipse_", "ellipseMode_", "radians_", "degrees_"], "name": "arc()", - "description": "Draws an arc to the screen. Arcs are drawn along the outer edge of an ellipse\n defined by the a, b, c, and d parameters. The\n origin of the arc's ellipse may be changed with the ellipseMode()\n function. Use the start and stop parameters to specify the\n angles (in radians) at which to draw the arc. The start/stop values must be\n in clockwise order.
\n
\n There are three ways to draw an arc; the rendering technique used is defined\n by the optional seventh parameter. The three options, depicted in the above\n examples, are PIE, OPEN, and CHORD. The default mode is the OPEN stroke with\n a PIE fill.
\n
\n In some cases, the arc() function isn't accurate enough for smooth\n drawing. For example, the shape may jitter on screen when rotating slowly. If\n you're having an issue with how arcs are rendered, you'll need to draw the\n arc yourself with beginShape()/endShape() or a PShape.", + "description": "Draws an arc to the screen. Arcs are drawn along the outer edge of an ellipse\n defined by the a, b, c, and d parameters. The\n origin of the arc's ellipse may be changed with the ellipseMode()\n function. Use the start and stop parameters to specify the\n angles (in radians) at which to draw the arc. The start/stop values must be\n in clockwise order.
\n
\n There are three ways to draw an arc; the rendering technique used is defined\n by the optional seventh parameter. The three options, depicted in the above\n examples, are PIE, OPEN, and CHORD. The default mode is the OPEN stroke with\n a PIE fill.
\n
\n In some cases, the arc() function isn't accurate enough for smooth\n drawing. For example, the shape may jitter on screen when rotating slowly. If\n you're having an issue with how arcs are rendered, you'll need to draw the\n arc yourself with beginShape()/endShape() or a PShape.", "syntax": [ "arc(a, b, c, d, start, stop)", "arc(a, b, c, d, start, stop, mode)" diff --git a/content/references/translations/en/processing/arrayCopy_.json b/content/references/translations/en/processing/arrayCopy_.json index d86547999..180fefb16 100644 --- a/content/references/translations/en/processing/arrayCopy_.json +++ b/content/references/translations/en/processing/arrayCopy_.json @@ -2,7 +2,7 @@ "brief": "Copies an array (or part of an array) to another array", "related": ["concat_"], "name": "arrayCopy()", - "description": "Copies an array (or part of an array) to another array. The src\n array is copied to the dst array, beginning at the position\n specified by srcPosition and into the position specified by\n dstPosition. The number of elements to copy is determined by\n length. Note that copying values overwrites existing values in the\n destination array. To append values instead of overwriting them, use\n concat().
\n
\n The simplified version with only two arguments — arrayCopy(src,\n dst) — copies an entire array to another of the same size. It is\n equivalent to arrayCopy(src, 0, dst, 0, src.length).
\n
\n Using this function is far more efficient for copying array data than\n iterating through a for() loop and copying each element\n individually. This function only copies references, which means that for\n most purposes it only copies one-dimensional arrays (a single set of\n brackets). If used with a two (or three or more) dimensional array, it will\n only copy the references at the first level, because a two dimensional\n array is simply an \"array of arrays\". This does not produce an error,\n however, because this is often the desired behavior. Internally, this\n function calls Java's System.arraycopy()\n method, so most things that apply there are inherited.", + "description": "Copies an array (or part of an array) to another array. The src\n array is copied to the dst array, beginning at the position\n specified by srcPosition and into the position specified by\n dstPosition. The number of elements to copy is determined by\n length. Note that copying values overwrites existing values in the\n destination array. To append values instead of overwriting them, use\n concat().
\n
\n The simplified version with only two arguments — arrayCopy(src,\n dst) — copies an entire array to another of the same size. It is\n equivalent to arrayCopy(src, 0, dst, 0, src.length).
\n
\n Using this function is far more efficient for copying array data than\n iterating through a for() loop and copying each element\n individually. This function only copies references, which means that for\n most purposes it only copies one-dimensional arrays (a single set of\n brackets). If used with a two (or three or more) dimensional array, it will\n only copy the references at the first level, because a two-dimensional\n array is simply an \"array of arrays\". This does not produce an error,\n however, because this is often the desired behavior. Internally, this\n function calls Java's System.arraycopy()\n method, so most things that apply there are inherited.", "syntax": [ "arrayCopy(src, srcPosition, dst, dstPosition, length)", "arrayCopy(src, dst, length)", diff --git a/content/references/translations/en/processing/atan2_.json b/content/references/translations/en/processing/atan2_.json index e9c83e0af..5e6d3bd6b 100644 --- a/content/references/translations/en/processing/atan2_.json +++ b/content/references/translations/en/processing/atan2_.json @@ -2,7 +2,7 @@ "brief": "Calculates the angle (in radians) from a specified point to the\n coordinate origin as measured from the positive x-axis", "related": ["tan_"], "name": "atan2()", - "description": "Calculates the angle (in radians) from a specified point to the\n coordinate origin as measured from the positive x-axis. Values are\n returned as a float in the range from PI to -PI.\n The atan2() function is most often used for orienting geometry to\n the position of the cursor. Note: The y-coordinate of the point is the\n first parameter and the x-coordinate is the second due the the structure\n of calculating the tangent.", + "description": "Calculates the angle (in radians) from a specified point to the\n coordinate origin as measured from the positive x-axis. Values are\n returned as a float in the range from PI to -PI.\n The atan2() function is most often used for orienting geometry to\n the position of the cursor. Note: The y-coordinate of the point is the\n first parameter and the x-coordinate is the second due the structure\n of calculating the tangent.", "syntax": ["atan2(y, x)"], "returns": "float", "type": "function", diff --git a/content/references/translations/en/processing/background_.json b/content/references/translations/en/processing/background_.json index 037ed150d..1de747987 100644 --- a/content/references/translations/en/processing/background_.json +++ b/content/references/translations/en/processing/background_.json @@ -2,7 +2,7 @@ "brief": "Sets the color used for the background of the Processing window", "related": ["stroke_", "fill_", "tint_", "colorMode_"], "name": "background()", - "description": "The background() function sets the color used for the background of\n the Processing window. The default background is light gray. This function is\n typically used within draw() to clear the display window at the\n beginning of each frame, but it can be used inside setup() to set the\n background on the first frame of animation or if the background need only be\n set once.
\n
\n An image can also be used as the background for a sketch, although the\n image's width and height must match that of the sketch window. Images used\n with background() will ignore the current tint() setting. To\n resize an image to the size of the sketch window, use image.resize(width,\n height).
\n
\n It is not possible to use the transparency alpha parameter with\n background colors on the main drawing surface. It can only be used along with\n a PGraphics object and createGraphics().\n\n\n ", + "description": "The background() function sets the color used for the background of\n the Processing window. The default background is light gray. This function is\n typically used within draw() to clear the display window at the\n beginning of each frame, but it can be used inside setup() to set the\n background on the first frame of animation or if the background need only be\n set once.
\n
\n An image can also be used as the background for a sketch, although the\n image's width and height must match that of the sketch window. Images used\n with background() will ignore the current tint() setting. To\n resize an image to the size of the sketch window, use image.resize(width,\n height).
\n
\n It is not possible to use the transparency alpha parameter with\n background colors on the main drawing surface. It can only be used along with\n a PGraphics object and createGraphics().\n\n ", "syntax": [ "background(rgb)", "background(rgb, alpha)", diff --git a/content/references/translations/en/processing/beginCamera_.json b/content/references/translations/en/processing/beginCamera_.json index 4de2d52f0..7e3b19813 100644 --- a/content/references/translations/en/processing/beginCamera_.json +++ b/content/references/translations/en/processing/beginCamera_.json @@ -9,7 +9,7 @@ "scale_" ], "name": "beginCamera()", - "description": "The beginCamera() and endCamera() functions enable\n advanced customization of the camera space. The functions are useful if\n you want to more control over camera movement, however for most users,\n the camera() function will be sufficient.

The camera\n functions will replace any transformations (such as rotate() or\n translate()) that occur before them in draw(), but they\n will not automatically replace the camera transform itself. For this\n reason, camera functions should be placed at the beginning of\n draw() (so that transformations happen afterwards), and the\n camera() function can be used after beginCamera() if you\n want to reset the camera before applying transformations.
This function sets the matrix mode to the camera matrix so calls such\n as translate(), rotate(), applyMatrix() and resetMatrix()\n affect the camera. beginCamera() should always be used with a\n following endCamera() and pairs of beginCamera() and\n endCamera() cannot be nested.", + "description": "The beginCamera() and endCamera() functions enable\n advanced customization of the camera space. The functions are useful if\n you want to more control over camera movement, however for most users,\n the camera() function will be sufficient.

The camera\n functions will replace any transformations (such as rotate() or\n translate()) that occur before them in draw(), but they\n will not automatically replace the camera transform itself. For this\n reason, camera functions should be placed at the beginning of\n draw() (so that transformations happen afterwards), and the\n camera() function can be used after beginCamera() if you\n want to reset the camera before applying transformations.

This function sets the matrix mode to the camera matrix so calls such\n as translate(), rotate(), applyMatrix() and resetMatrix()\n affect the camera. beginCamera() should always be used with a\n following endCamera() and pairs of beginCamera() and\n endCamera() cannot be nested.", "syntax": ["beginCamera()"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/beginContour_.json b/content/references/translations/en/processing/beginContour_.json index 331753239..c5c8e7bf1 100644 --- a/content/references/translations/en/processing/beginContour_.json +++ b/content/references/translations/en/processing/beginContour_.json @@ -2,7 +2,7 @@ "brief": "Begins recording vertices for the shape", "related": [], "name": "beginContour()", - "description": "Use the beginContour() and endContour() function to\n create negative shapes within shapes such as the center of the\n letter 'O'. beginContour() begins recording vertices for the\n shape and endContour() stops recording. The vertices that\n define a negative shape must \"wind\" in the opposite direction from\n the exterior shape. First draw vertices for the exterior shape in\n clockwise order, then for internal shapes, draw vertices counterclockwise.
\n
\n These functions can only be used within a beginShape()/endShape()\n pair and transformations such as translate(), rotate(), and\n scale() do not work within a beginContour()/endContour()\n pair. It is also not possible to use other shapes, such as ellipse()\n or rect() within.", + "description": "Use the beginContour() and endContour() function to\n create negative shapes within shapes such as the center of the\n letter \"O\". beginContour() begins recording vertices for the\n shape and endContour() stops recording. The vertices that\n define a negative shape must \"wind\" in the opposite direction from\n the exterior shape. First draw vertices for the exterior shape in\n clockwise order, then for internal shapes, draw vertices counterclockwise.
\n
\n These functions can only be used within a beginShape()/endShape()\n pair and transformations such as translate(), rotate(), and\n scale() do not work within a beginContour()/endContour()\n pair. It is also not possible to use other shapes, such as ellipse()\n or rect() within.", "syntax": ["beginContour()"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/beginRaw_.json b/content/references/translations/en/processing/beginRaw_.json index 3f35a253c..9f31e174f 100644 --- a/content/references/translations/en/processing/beginRaw_.json +++ b/content/references/translations/en/processing/beginRaw_.json @@ -2,7 +2,7 @@ "brief": "To create vectors from 3D data, use the beginRaw() and\n endRaw() commands", "related": ["endRaw_"], "name": "beginRaw()", - "description": "To create vectors from 3D data, use the beginRaw() and\n endRaw() commands. These commands will grab the shape data just\n before it is rendered to the screen. At this stage, your entire scene is\n nothing but a long list of individual lines and triangles. This means\n that a shape created with sphere() function will be made up of\n hundreds of triangles, rather than a single object. Or that a\n multi-segment line shape (such as a curve) will be rendered as\n individual segments.\n

\n When using beginRaw() and endRaw(), it's possible to write\n to either a 2D or 3D renderer. For instance, beginRaw() with the\n PDF library will write the geometry as flattened triangles and lines,\n even if recording from the P3D renderer.\n

\n If you want a background to show up in your files, use rect(0, 0,\n width, height) after setting the fill() to the background\n color. Otherwise the background will not be rendered to the file because\n the background is not shape.\n

\n Using hint(ENABLE_DEPTH_SORT) can improve the appearance of 3D\n geometry drawn to 2D file formats. See the hint() reference for\n more details.\n

\n See examples in the reference for the PDF and DXF\n libraries for more information.", + "description": "To create vectors from 3D data, use the beginRaw() and\n endRaw() commands. These commands will grab the shape data just\n before it is rendered to the screen. At this stage, your entire scene is\n nothing but a long list of individual lines and triangles. This means\n that a shape created with sphere() function will be made up of\n hundreds of triangles, rather than a single object. Or that a\n multi-segment line shape (such as a curve) will be rendered as\n individual segments.\n

\n When using beginRaw() and endRaw(), it's possible to write\n to either a 2D or 3D renderer. For instance, beginRaw() with the\n PDF library will write the geometry as flattened triangles and lines,\n even if recording from the P3D renderer.\n

\n If you want a background to show up in your files, use rect(0, 0,\n width, height) after setting the fill() to the background\n color. Otherwise, the background will not be rendered to the file because\n the background is not shape.\n

\n Using hint(ENABLE_DEPTH_SORT) can improve the appearance of 3D\n geometry drawn to 2D file formats. See the hint() reference for\n more details.\n

\n See examples in the reference for the PDF and DXF\n libraries for more information.", "syntax": ["beginRaw(renderer, filename)"], "returns": "PGraphics or void", "type": "function", diff --git a/content/references/translations/en/processing/beginRecord_.json b/content/references/translations/en/processing/beginRecord_.json index 1acabe718..2d1da1e98 100644 --- a/content/references/translations/en/processing/beginRecord_.json +++ b/content/references/translations/en/processing/beginRecord_.json @@ -2,7 +2,7 @@ "brief": "Opens a new file and all subsequent drawing functions are echoed\n to this file as well as the display window", "related": ["endRecord_"], "name": "beginRecord()", - "description": "Opens a new file and all subsequent drawing functions are echoed to this\n file as well as the display window. The beginRecord() function\n requires two parameters, the first is the renderer and the second is the\n file name. This function is always used with endRecord() to stop the\n recording process and close the file.
\n
\n Note that beginRecord() will only pick up any settings that happen\n after it has been called. For instance, if you call textFont()\n before beginRecord(), then that font will not be set for the file\n that you're recording to.
\n
\n beginRecord() works only with the PDF and SVG renderers.", + "description": "Opens a new file and all subsequent drawing functions are echoed to this\n file as well as the display window. The beginRecord() function\n requires two parameters, the first is the renderer and the second is the\n file name. This function is always used with endRecord() to stop the\n recording process and close the file.
\n
\n Note that beginRecord() will only pick up any settings that happen\n after it has been called. For instance, if you call textFont()\n before beginRecord(), then that font will not be set for the file\n that you're recording to.
\n
\n beginRecord() works only with the PDF and SVG renderers.", "syntax": ["beginRecord(renderer, filename)"], "returns": "PGraphics or void", "type": "function", diff --git a/content/references/translations/en/processing/beginShape_.json b/content/references/translations/en/processing/beginShape_.json index 52c50ca83..153d79717 100644 --- a/content/references/translations/en/processing/beginShape_.json +++ b/content/references/translations/en/processing/beginShape_.json @@ -8,7 +8,7 @@ "bezierVertex_" ], "name": "beginShape()", - "description": "Using the beginShape() and endShape() functions allow creating\n more complex forms. beginShape() begins recording vertices for a shape\n and endShape() stops recording. The value of the kind parameter\n tells it which types of shapes to create from the provided vertices. With no\n mode specified, the shape can be any irregular polygon. The parameters\n available for beginShape() are POINTS, LINES, TRIANGLES, TRIANGLE_FAN,\n TRIANGLE_STRIP, QUADS, and QUAD_STRIP. After calling the beginShape()\n function, a series of vertex() commands must follow. To stop drawing\n the shape, call endShape(). The vertex() function with two\n parameters specifies a position in 2D and the vertex() function with\n three parameters specifies a position in 3D. Each shape will be outlined with\n the current stroke color and filled with the fill color.
\n
\n Transformations such as translate(), rotate(), and\n scale() do not work within beginShape(). It is also not\n possible to use other shapes, such as ellipse() or rect()\n within beginShape().
\n
\n The P2D and P3D renderers allow stroke() and fill() to be\n altered on a per-vertex basis, but the default renderer does not. Settings\n such as strokeWeight(), strokeCap(), and strokeJoin()\n cannot be changed while inside a beginShape()/endShape() block\n with any renderer.", + "description": "Using the beginShape() and endShape() functions allow creating\n more complex forms. beginShape() begins recording vertices for a shape\n and endShape() stops recording. The value of the kind parameter\n tells it which types of shapes to create from the provided vertices. With no\n mode specified, the shape can be any irregular polygon. The parameters\n available for beginShape() are POINTS, LINES, TRIANGLES, TRIANGLE_FAN,\n TRIANGLE_STRIP, QUADS, and QUAD_STRIP. After calling the beginShape()\n function, a series of vertex() commands must follow. To stop drawing\n the shape, call endShape(). The vertex() function with two\n parameters specifies a position in 2D and the vertex() function with\n three parameters specifies a position in 3D. Each shape will be outlined with\n the current stroke color and filled with the fill color.
\n
\n Transformations such as translate(), rotate(), and\n scale() do not work within beginShape(). It is also not\n possible to use other shapes, such as ellipse() or rect()\n within beginShape().
\n
\n The P2D and P3D renderers allow stroke() and fill() to be\n altered on a per-vertex basis, but the default renderer does not. Settings\n such as strokeWeight(), strokeCap(), and strokeJoin()\n cannot be changed while inside a beginShape()/endShape() block\n with any renderer.", "syntax": ["beginShape()", "beginShape(kind)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/bezierDetail_.json b/content/references/translations/en/processing/bezierDetail_.json index 615143152..3b75c8f75 100644 --- a/content/references/translations/en/processing/bezierDetail_.json +++ b/content/references/translations/en/processing/bezierDetail_.json @@ -1,8 +1,8 @@ { - "brief": "Sets the resolution at which Beziers display", + "brief": "Sets the resolution at which Bézier curves display", "related": ["curve_", "curveVertex_", "curveTightness_"], "name": "bezierDetail()", - "description": "Sets the resolution at which Beziers display. The default value is 20. This\n function is only useful when using the P3D or P2D renderer; the default\n JAVA2D renderer does not use this information.", + "description": "Sets the resolution at which Bézier curves display. The default value is 20.\n This function is only useful when using the P2D or P3D renderer;\n the default (JAVA2D) renderer does not use this information.", "syntax": ["bezierDetail(detail)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/bezierPoint_.json b/content/references/translations/en/processing/bezierPoint_.json index 6bd6f190d..5aa65cd5f 100644 --- a/content/references/translations/en/processing/bezierPoint_.json +++ b/content/references/translations/en/processing/bezierPoint_.json @@ -2,7 +2,7 @@ "brief": "Evaluates the Bezier at point t for points a, b, c, d", "related": ["bezier_", "bezierVertex_", "curvePoint_"], "name": "bezierPoint()", - "description": "Evaluates the Bezier at point t for points a, b, c, d. The parameter t\n varies between 0 and 1, a and d are points on the curve, and b and c are\n the control points. This can be done once with the x coordinates and a\n second time with the y coordinates to get the location of a bezier curve\n at t.\n\n\n ", + "description": "Evaluates the Bezier at point t for points a, b, c, d. The parameter t\n varies between 0 and 1, a and d are points on the curve, and b and c are\n the control points. This can be done once with the x coordinates and a\n second time with the y coordinates to get the location of a Bézier curve\n at t.\n\n ", "syntax": ["bezierPoint(a, b, c, d, t)"], "returns": "float", "type": "function", diff --git a/content/references/translations/en/processing/bezierTangent_.json b/content/references/translations/en/processing/bezierTangent_.json index 82ebc9b84..6fea9b9e1 100644 --- a/content/references/translations/en/processing/bezierTangent_.json +++ b/content/references/translations/en/processing/bezierTangent_.json @@ -1,8 +1,8 @@ { - "brief": "Calculates the tangent of a point on a Bezier curve", + "brief": "Calculates the tangent of a point on a Bézier curve", "related": ["bezier_", "bezierVertex_", "curvePoint_"], "name": "bezierTangent()", - "description": "Calculates the tangent of a point on a Bezier curve. There is a good\n definition of tangent on Wikipedia.\n\n\n ", + "description": "Calculates the tangent of a point on a Bézier curve. There is a good\n definition of tangent on Wikipedia.\n\n ", "syntax": ["bezierTangent(a, b, c, d, t)"], "returns": "float", "type": "function", diff --git a/content/references/translations/en/processing/bezierVertex_.json b/content/references/translations/en/processing/bezierVertex_.json index 91f95d9af..23f0be9f6 100644 --- a/content/references/translations/en/processing/bezierVertex_.json +++ b/content/references/translations/en/processing/bezierVertex_.json @@ -2,7 +2,7 @@ "brief": "Specifies vertex coordinates for Bezier curves", "related": ["curveVertex_", "vertex_", "quadraticVertex_", "bezier_"], "name": "bezierVertex()", - "description": "Specifies vertex coordinates for Bezier curves. Each call to\n bezierVertex() defines the position of two control points and one\n anchor point of a Bezier curve, adding a new segment to a line or shape.\n The first time bezierVertex() is used within a\n beginShape() call, it must be prefaced with a call to\n vertex() to set the first anchor point. This function must be\n used between beginShape() and endShape() and only when\n there is no MODE parameter specified to beginShape(). Using the\n 3D version requires rendering with P3D (see the Environment reference\n for more information).", + "description": "Specifies vertex coordinates for Bézier curves. Each call to\n bezierVertex() defines the position of two control points and one\n anchor point of a Bézier curve, adding a new segment to a line or shape.\n The first time bezierVertex() is used within a\n beginShape() call, it must be prefaced with a call to\n vertex() to set the first anchor point. This function must be\n used between beginShape() and endShape() and only when\n there is no MODE parameter specified to beginShape(). Using the\n 3D version requires rendering with P3D (see the Environment reference\n for more information).", "syntax": [ "bezierVertex(x2, y2, x3, y3, x4, y4)", "bezierVertex(x2, y2, z2, x3, y3, z3, x4, y4, z4)" diff --git a/content/references/translations/en/processing/bezier_.json b/content/references/translations/en/processing/bezier_.json index 1a5dda153..84167853b 100644 --- a/content/references/translations/en/processing/bezier_.json +++ b/content/references/translations/en/processing/bezier_.json @@ -1,8 +1,8 @@ { - "brief": "Draws a Bezier curve on the screen", + "brief": "Draws a Bézier curve on the screen", "related": ["bezierVertex_", "curve_"], "name": "bezier()", - "description": "Draws a Bezier curve on the screen. These curves are defined by a series\n of anchor and control points. The first two parameters specify the first\n anchor point and the last two parameters specify the other anchor point.\n The middle parameters specify the control points which define the shape\n of the curve. Bezier curves were developed by French engineer Pierre\n Bezier. Using the 3D version requires rendering with P3D (see the\n Environment reference for more information).\n\n\n ", + "description": "Draws a Bézier curve on the screen. These curves are defined by a series\n of anchor and control points. The first two parameters specify the first\n anchor point and the last two parameters specify the other anchor point.\n The middle parameters specify the control points which define the shape\n of the curve. The curves were developed by French engineer Pierre\n Bezier. Using the 3D version requires rendering with P3D (see the\n Environment reference for more information).\n\n ", "syntax": [ "bezier(x1, y1, x2, y2, x3, y3, x4, y4)", "bezier(x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4)" diff --git a/content/references/translations/en/processing/binary_.json b/content/references/translations/en/processing/binary_.json index b6e811d87..10d07aac4 100644 --- a/content/references/translations/en/processing/binary_.json +++ b/content/references/translations/en/processing/binary_.json @@ -2,7 +2,7 @@ "brief": "Converts an int, byte, char, or color to a\n String containing the equivalent binary notation", "related": ["unbinary_", "hex_", "unhex_"], "name": "binary()", - "description": "Converts an int, byte, char, or color to a\n String containing the equivalent binary notation. For example, the\n color value produced by color(0, 102, 153, 255) will convert\n to the String value \"11111111000000000110011010011001\". This\n function can help make your geeky debugging sessions much happier.
\n
\n Note that the maximum number of digits is 32, because an int value\n can only represent up to 32 bits. Specifying more than 32 digits will have\n no effect.", + "description": "Converts an int, byte, char, or color to a\n String containing the equivalent binary notation. For example, the\n color value produced by color(0, 102, 153, 255) will convert\n to the String value \"11111111000000000110011010011001\". This\n function can help make your geeky debugging sessions much happier.
\n
\n Note that the maximum number of digits is 32, because an int value\n can only represent up to 32 bits. Specifying more than 32 digits will have\n no effect.", "syntax": ["binary(value)", "binary(value, digits)"], "returns": "String", "type": "function", diff --git a/content/references/translations/en/processing/blendMode_.json b/content/references/translations/en/processing/blendMode_.json index a019133e1..11e81cb0c 100644 --- a/content/references/translations/en/processing/blendMode_.json +++ b/content/references/translations/en/processing/blendMode_.json @@ -2,7 +2,7 @@ "brief": "Blends the pixels in the display window according to a defined mode", "related": [], "name": "blendMode()", - "description": "Blends the pixels in the display window according to a defined mode.\n There is a choice of the following modes to blend the source pixels (A)\n with the ones of pixels already in the display window (B). Each pixel's\n final color is the result of applying one of the blend modes with each\n channel of (A) and (B) independently. The red channel is compared with\n red, green with green, and blue with blue.
\n
\n BLEND - linear interpolation of colors: C = A*factor + B. This is the default.
\n
\n ADD - additive blending with white clip: C = min(A*factor + B, 255)
\n
\n SUBTRACT - subtractive blending with black clip: C = max(B - A*factor, 0)
\n
\n DARKEST - only the darkest color succeeds: C = min(A*factor, B)
\n
\n LIGHTEST - only the lightest color succeeds: C = max(A*factor, B)
\n
\n DIFFERENCE - subtract colors from underlying image.
\n
\n EXCLUSION - similar to DIFFERENCE, but less extreme.
\n
\n MULTIPLY - multiply the colors, result will always be darker.
\n
\n SCREEN - opposite multiply, uses inverse values of the colors.
\n
\n REPLACE - the pixels entirely replace the others and don't utilize alpha (transparency) values
\n
\n We recommend using blendMode() and not the previous blend()\n function. However, unlike blend(), the blendMode() function\n does not support the following: HARD_LIGHT, SOFT_LIGHT, OVERLAY, DODGE,\n BURN. On older hardware, the LIGHTEST, DARKEST, and DIFFERENCE modes might\n not be available as well.", + "description": "Blends the pixels in the display window according to a defined mode.\n There is a choice of the following modes to blend the source pixels (A)\n with the ones of pixels already in the display window (B). Each pixel's\n final color is the result of applying one of the blend modes with each\n channel of (A) and (B) independently. The red channel is compared with\n red, green with green, and blue with blue.
\n
\n BLEND - linear interpolation of colors: C = A*factor + B. This is the default.
\n
\n ADD - additive blending with white clip: C = min(A*factor + B, 255)
\n
\n SUBTRACT - subtractive blending with black clip: C = max(B - A*factor, 0)
\n
\n DARKEST - only the darkest color succeeds: C = min(A*factor, B)
\n
\n LIGHTEST - only the lightest color succeeds: C = max(A*factor, B)
\n
\n DIFFERENCE - subtract colors from underlying image.
\n
\n EXCLUSION - similar to DIFFERENCE, but less extreme.
\n
\n MULTIPLY - multiply the colors, result will always be darker.
\n
\n SCREEN - opposite multiply, uses inverse values of the colors.
\n
\n REPLACE - the pixels entirely replace the others and don't utilize alpha (transparency) values
\n
\n We recommend using blendMode() and not the previous blend()\n function. However, unlike blend(), the blendMode() function\n does not support the following: HARD_LIGHT, SOFT_LIGHT, OVERLAY, DODGE,\n BURN. On older hardware, the LIGHTEST, DARKEST, and DIFFERENCE modes might\n not be available as well.", "syntax": ["blendMode(mode)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/blend_.json b/content/references/translations/en/processing/blend_.json index 5f6fd5560..c7a5b4b86 100644 --- a/content/references/translations/en/processing/blend_.json +++ b/content/references/translations/en/processing/blend_.json @@ -2,7 +2,7 @@ "brief": "Copies a pixel or rectangle of pixels using different blending modes", "related": ["alpha_", "copy_", "PImage_blendColor_"], "name": "blend()", - "description": "Blends a region of pixels into the image specified by the img\n parameter. These copies utilize full alpha channel support and a choice\n of the following modes to blend the colors of source pixels (A) with the\n ones of pixels in the destination image (B):
\n
\n BLEND - linear interpolation of colours: C = A*factor + B
\n
\n ADD - additive blending with white clip: C = min(A*factor + B, 255)
\n
\n SUBTRACT - subtractive blending with black clip: C = max(B - A*factor,\n 0)
\n
\n DARKEST - only the darkest colour succeeds: C = min(A*factor, B)
\n
\n LIGHTEST - only the lightest colour succeeds: C = max(A*factor, B)
\n
\n DIFFERENCE - subtract colors from underlying image.
\n
\n EXCLUSION - similar to DIFFERENCE, but less extreme.
\n
\n MULTIPLY - Multiply the colors, result will always be darker.
\n
\n SCREEN - Opposite multiply, uses inverse values of the colors.
\n
\n OVERLAY - A mix of MULTIPLY and SCREEN. Multiplies dark values,\n and screens light values.
\n
\n HARD_LIGHT - SCREEN when greater than 50% gray, MULTIPLY when lower.
\n
\n SOFT_LIGHT - Mix of DARKEST and LIGHTEST.\n Works like OVERLAY, but not as harsh.
\n
\n DODGE - Lightens light tones and increases contrast, ignores darks.\n Called \"Color Dodge\" in Illustrator and Photoshop.
\n
\n BURN - Darker areas are applied, increasing contrast, ignores lights.\n Called \"Color Burn\" in Illustrator and Photoshop.
\n
\n All modes use the alpha information (highest byte) of source image\n pixels as the blending factor. If the source and destination regions are\n different sizes, the image will be automatically resized to match the\n destination size. If the srcImg parameter is not used, the\n display window is used as the source image.
\n
\n As of release 0149, this function ignores imageMode().", + "description": "Blends a region of pixels into the image specified by the img\n parameter. These copies utilize full alpha channel support and a choice\n of the following modes to blend the colors of source pixels (A) with the\n ones of pixels in the destination image (B):
\n
\n BLEND - linear interpolation of colours: C = A*factor + B
\n
\n ADD - additive blending with white clip: C = min(A*factor + B, 255)
\n
\n SUBTRACT - subtractive blending with black clip: C = max(B - A*factor,\n 0)
\n
\n DARKEST - only the darkest colour succeeds: C = min(A*factor, B)
\n
\n LIGHTEST - only the lightest colour succeeds: C = max(A*factor, B)
\n
\n DIFFERENCE - subtract colors from underlying image.
\n
\n EXCLUSION - similar to DIFFERENCE, but less extreme.
\n
\n MULTIPLY - Multiply the colors, result will always be darker.
\n
\n SCREEN - Opposite multiply, uses inverse values of the colors.
\n
\n OVERLAY - A mix of MULTIPLY and SCREEN. Multiplies dark values,\n and screens light values.
\n
\n HARD_LIGHT - SCREEN when greater than 50% gray, MULTIPLY when lower.
\n
\n SOFT_LIGHT - Mix of DARKEST and LIGHTEST.\n Works like OVERLAY, but not as harsh.
\n
\n DODGE - Lightens light tones and increases contrast, ignores darks.\n Called \"Color Dodge\" in Illustrator and Photoshop.
\n
\n BURN - Darker areas are applied, increasing contrast, ignores lights.\n Called \"Color Burn\" in Illustrator and Photoshop.
\n
\n All modes use the alpha information (the highest byte) of source image\n pixels as the blending factor. If the source and destination regions are\n different sizes, the image will be automatically resized to match the\n destination size. If the srcImg parameter is not used, the\n display window is used as the source image.
\n
\n As of release 0149, this function ignores imageMode().", "syntax": [ "blend(sx, sy, sw, sh, dx, dy, dw, dh, mode)", "blend(src, sx, sy, sw, sh, dx, dy, dw, dh, mode)" diff --git a/content/references/translations/en/processing/blue_.json b/content/references/translations/en/processing/blue_.json index cd1598074..ac4ab5586 100644 --- a/content/references/translations/en/processing/blue_.json +++ b/content/references/translations/en/processing/blue_.json @@ -10,7 +10,7 @@ "rightshift_" ], "name": "blue()", - "description": "Extracts the blue value from a color, scaled to match current\n colorMode(). The value is always returned as a float, so be careful\n not to assign it to an int value.
\n
\n The blue() function is easy to use and understand, but it is slower\n than a technique called bit masking. When working in colorMode(RGB,\n 255), you can achieve the same results as blue() but with greater\n speed by using a bit mask to remove the other color components. For example,\n the following two lines of code are equivalent means of getting the blue\n value of the color value c:
\n
\n\n
\n float b1 = blue(c); // Simpler, but slower to calculate\n float b2 = c & 0xFF; // Very fast to calculate\n 
", + "description": "Extracts the blue value from a color, scaled to match current\n colorMode(). The value is always returned as a float, so be careful\n not to assign it to an int value.
\n
\n The blue() function is easy to use and understand, but it is slower\n than a technique called bit masking. When working in colorMode(RGB,\n 255), you can achieve the same results as blue() but with greater\n speed by using a bit mask to remove the other color components. For example,\n the following two lines of code are equivalent means of getting the blue\n value of the color value c:
\n
\n\n
\n float b1 = blue(c); // Simpler, but slower to calculate\n float b2 = c & 0xFF; // Very fast to calculate\n 
", "syntax": ["blue(rgb)"], "returns": "float", "type": "function", diff --git a/content/references/translations/en/processing/box_.json b/content/references/translations/en/processing/box_.json index c568484b6..c6fe1d94f 100644 --- a/content/references/translations/en/processing/box_.json +++ b/content/references/translations/en/processing/box_.json @@ -2,7 +2,7 @@ "brief": "A box is an extruded rectangle", "related": ["sphere_"], "name": "box()", - "description": "A box is an extruded rectangle. A box with equal dimension on all sides\n is a cube.", + "description": "A box is an extruded rectangle. A box with equal dimension\n on all sides is a cube.", "syntax": ["box(size)", "box(w, h, d)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/clear_.json b/content/references/translations/en/processing/clear_.json index 73dd4e4d3..24e471a20 100644 --- a/content/references/translations/en/processing/clear_.json +++ b/content/references/translations/en/processing/clear_.json @@ -2,7 +2,7 @@ "brief": "Clears the pixels within a buffer", "related": [], "name": "clear()", - "description": "Clears the pixels within a buffer. This function only works on\n PGraphics objects created with the createGraphics()\n function. Unlike the main graphics context (the display window),\n pixels in additional graphics areas created with createGraphics()\n can be entirely or partially transparent. This function clears\n everything in a PGraphics object to make all of the pixels\n 100% transparent.", + "description": "Clears the pixels within a buffer. This function only works on\n PGraphics objects created with the createGraphics()\n function. Unlike the main graphics context (the display window),\n pixels in additional graphics areas created with createGraphics()\n can be entirely or partially transparent. This function clears\n everything in a PGraphics object to make all the pixels\n 100% transparent.", "syntax": ["clear()"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/colorMode_.json b/content/references/translations/en/processing/colorMode_.json index ad042d7cd..c5b78d839 100644 --- a/content/references/translations/en/processing/colorMode_.json +++ b/content/references/translations/en/processing/colorMode_.json @@ -2,7 +2,7 @@ "brief": "Changes the way Processing interprets color data", "related": ["background_", "fill_", "stroke_"], "name": "colorMode()", - "description": "Changes the way Processing interprets color data. By default, the parameters\n for fill(), stroke(), background(), and color()\n are defined by values between 0 and 255 using the RGB color model. The\n colorMode() function is used to change the numerical range used for\n specifying colors and to switch color systems. For example, calling\n colorMode(RGB, 1.0) will specify that values are specified between 0\n and 1. The limits for defining colors are altered by setting the parameters\n max, max1, max2, max3, and maxA.
\n
\n After changing the range of values for colors with code like\n colorMode(HSB, 360, 100, 100), those ranges remain in use until they\n are explicitly changed again. For example, after running colorMode(HSB,\n 360, 100, 100) and then changing back to colorMode(RGB), the range\n for R will be 0 to 360 and the range for G and B will be 0 to 100. To avoid\n this, be explicit about the ranges when changing the color mode. For\n instance, instead of colorMode(RGB), write colorMode(RGB, 255, 255,\n 255).", + "description": "Changes the way Processing interprets color data. By default, the parameters\n for fill(), stroke(), background(), and color()\n are defined by values between 0 and 255 using the RGB color model. The\n colorMode() function is used to change the numerical range used for\n specifying colors and to switch color systems. For example, calling\n colorMode(RGB, 1.0) will specify that values are specified between 0\n and 1. The limits for defining colors are altered by setting the parameters\n max, max1, max2, max3, and maxA.
\n
\n After changing the range of values for colors with code like\n colorMode(HSB, 360, 100, 100), those ranges remain in use until they\n are explicitly changed again. For example, after running colorMode(HSB,\n 360, 100, 100) and then changing back to colorMode(RGB), the range\n for R will be 0 to 360 and the range for G and B will be 0 to 100. To avoid\n this, be explicit about the ranges when changing the color mode. For\n instance, instead of colorMode(RGB), write colorMode(RGB, 255, 255,\n 255).", "syntax": [ "colorMode(mode)", "colorMode(mode, max)", diff --git a/content/references/translations/en/processing/color_.json b/content/references/translations/en/processing/color_.json index f84dc7e6d..15fcaffdd 100644 --- a/content/references/translations/en/processing/color_.json +++ b/content/references/translations/en/processing/color_.json @@ -2,7 +2,7 @@ "brief": "Creates colors for storing in variables of the color\n datatype", "related": ["colorMode_"], "name": "color()", - "description": "Creates colors for storing in variables of the color datatype. The\n parameters are interpreted as RGB or HSB values depending on the current\n colorMode(). The default mode is RGB values from 0 to 255 and,\n therefore, color(255, 204, 0) will return a bright yellow color (see\n the first example above).
\n
\n Note that if only one value is provided to color(), it will be\n interpreted as a grayscale value. Add a second value, and it will be used\n for alpha transparency. When three values are specified, they are\n interpreted as either RGB or HSB values. Adding a fourth value applies\n alpha transparency.
\n
\n Note that when using hexadecimal notation, it is not necessary to use\n color(), as in: color c = #006699
\n
\n More about how colors are stored can be found in the reference for the\n color datatype.", + "description": "Creates colors for storing in variables of the color datatype. The\n parameters are interpreted as RGB or HSB values depending on the current\n colorMode(). The default mode is RGB values from 0 to 255 and,\n therefore, color(255, 204, 0) will return a bright yellow color (see\n the first example above).
\n
\n Note that if only one value is provided to color(), it will be\n interpreted as a grayscale value. Add a second value, and it will be used\n for alpha transparency. When three values are specified, they are\n interpreted as either RGB or HSB values. Adding a fourth value applies\n alpha transparency.
\n
\n Note that when using hexadecimal notation, it is not necessary to use\n color(), as in: color c = #006699
\n
\n More about how colors are stored can be found in the reference for the\n color datatype.", "syntax": [ "color(gray)", "color(gray, alpha)", diff --git a/content/references/translations/en/processing/concat_.json b/content/references/translations/en/processing/concat_.json index f306bea3d..42baeb3cb 100644 --- a/content/references/translations/en/processing/concat_.json +++ b/content/references/translations/en/processing/concat_.json @@ -2,7 +2,7 @@ "brief": "Concatenates two arrays", "related": ["splice_", "arrayCopy_"], "name": "concat()", - "description": "Concatenates two arrays. For example, concatenating the array { 1, 2, 3 }\n and the array { 4, 5, 6 } yields { 1, 2, 3, 4, 5, 6 }. Both parameters must\n be arrays of the same datatype.
\n
\n When using an array of objects, the data returned from the function must be\n cast to the object array's data type. For example: SomeClass[] items =\n (SomeClass[]) concat(array1, array2).", + "description": "Concatenates two arrays. For example, concatenating the array { 1, 2, 3 }\n and the array { 4, 5, 6 } yields { 1, 2, 3, 4, 5, 6 }. Both parameters must\n be arrays of the same datatype.
\n
\n When using an array of objects, the data returned from the function must be\n cast to the object array's data type. For example: SomeClass[] items =\n (SomeClass[]) concat(array1, array2).", "syntax": ["concat(a, b)"], "returns": "boolean[], byte[], char[], int[], float[], String[], or Object", "type": "function", diff --git a/content/references/translations/en/processing/copy_.json b/content/references/translations/en/processing/copy_.json index 0aa0cb231..19bbb646b 100644 --- a/content/references/translations/en/processing/copy_.json +++ b/content/references/translations/en/processing/copy_.json @@ -2,7 +2,7 @@ "brief": "Copies the entire image", "related": ["alpha_", "blend_"], "name": "copy()", - "description": "Copies a region of pixels from one image into another. If the source and\n destination regions aren't the same size, it will automatically resize\n source pixels to fit the specified target region. No alpha information\n is used in the process, however if the source image has an alpha channel\n set, it will be copied as well.\n

\n As of release 0149, this function ignores imageMode().", + "description": "Copies a region of pixels from one image into another. If the source and\n destination regions aren't the same size, it will automatically resize\n source pixels to fit the specified target region. No alpha information\n is used in the process, however if the source image has an alpha channel\n set, it will be copied as well.\n

\n As of release 0149, this function ignores imageMode().", "syntax": [ "copy()", "copy(sx, sy, sw, sh, dx, dy, dw, dh)", diff --git a/content/references/translations/en/processing/createFont_.json b/content/references/translations/en/processing/createFont_.json index 0a15ae523..a3226f110 100644 --- a/content/references/translations/en/processing/createFont_.json +++ b/content/references/translations/en/processing/createFont_.json @@ -2,7 +2,7 @@ "brief": "Dynamically converts a font to the format used by Processing", "related": ["PFont", "textFont_", "text_", "loadFont_"], "name": "createFont()", - "description": "Dynamically converts a font to the format used by Processing from a .ttf or\n .otf file inside the sketch's \"data\" folder or a font that's installed\n elsewhere on the computer. If you want to use a font installed on your\n computer, use the PFont.list() method to first determine the names\n for the fonts recognized by the computer and are compatible with this\n function. Not all fonts can be used and some might work with one operating\n system and not others. When sharing a sketch with other people or posting\n it on the web, you may need to include a .ttf or .otf version of your font\n in the data directory of the sketch because other people might not have the\n font installed on their computer. Only fonts that can legally be\n distributed should be included with a sketch.
\n
\n The size parameter states the font size you want to generate. The\n smooth parameter specifies if the font should be anti-aliased or not.\n The charset parameter is an array of chars that specifies the\n characters to generate.
\n
\n This function allows Processing to work with the font natively in the\n default renderer, so the letters are defined by vector geometry and are\n rendered quickly. In the P2D and P3D renderers, the function\n sets the project to render the font as a series of small textures. For\n instance, when using the default renderer, the actual native version of the\n font will be employed by the sketch, improving drawing quality and\n performance. With the P2D and P3D renderers, the bitmapped\n version will be used to improve speed and appearance, but the results are\n poor when exporting if the sketch does not include the .otf or .ttf file,\n and the requested font is not available on the machine running the sketch.", + "description": "Dynamically converts a font to the format used by Processing from a .ttf or\n .otf file inside the sketch's \"data\" folder or a font that's installed\n elsewhere on the computer. If you want to use a font installed on your\n computer, use the PFont.list() method to first determine the names\n for the fonts recognized by the computer and are compatible with this\n function. Not all fonts can be used and some might work with one operating\n system and not others. When sharing a sketch with other people or posting\n it on the web, you may need to include a .ttf or .otf version of your font\n in the data directory of the sketch because other people might not have the\n font installed on their computer. Only fonts that can legally be\n distributed should be included with a sketch.
\n
\n The size parameter states the font size you want to generate. The\n smooth parameter specifies if the font should be anti-aliased or not.\n The charset parameter is an array of chars that specifies the\n characters to generate.
\n
\n This function allows Processing to work with the font natively in the\n default renderer, so the letters are defined by vector geometry and are\n rendered quickly. In the P2D and P3D renderers, the function\n sets the project to render the font as a series of small textures. For\n instance, when using the default renderer, the actual native version of the\n font will be employed by the sketch, improving drawing quality and\n performance. With the P2D and P3D renderers, the bitmapped\n version will be used to improve speed and appearance, but the results are\n poor when exporting if the sketch does not include the .otf or .ttf file,\n and the requested font is not available on the machine running the sketch.", "syntax": [ "createFont(name, size)", "createFont(name, size, smooth)", diff --git a/content/references/translations/en/processing/createGraphics_.json b/content/references/translations/en/processing/createGraphics_.json index 58650d300..8e4330677 100644 --- a/content/references/translations/en/processing/createGraphics_.json +++ b/content/references/translations/en/processing/createGraphics_.json @@ -2,7 +2,7 @@ "brief": "Creates and returns a new PGraphics object of the types\n P2D or P3D", "related": [], "name": "createGraphics()", - "description": "Creates and returns a new PGraphics object. Use this class if you\n need to draw into an off-screen graphics buffer. The first two parameters\n define the width and height in pixels. The third, optional parameter\n specifies the renderer. It can be defined as P2D, P3D, PDF, or SVG. If the\n third parameter isn't used, the default renderer is set. The PDF and SVG\n renderers require the filename parameter.
\n
\n It's important to consider the renderer used with createGraphics()\n in relation to the main renderer specified in size(). For example,\n it's only possible to use P2D or P3D with createGraphics() when one\n of them is defined in size(). Unlike Processing 1.0, P2D and P3D use\n OpenGL for drawing, and when using an OpenGL renderer it's necessary for\n the main drawing surface to be OpenGL-based. If P2D or P3D are used as the\n renderer in size(), then any of the options can be used with\n createGraphics(). If the default renderer is used in size(),\n then only the default, PDF, or SVG can be used with\n createGraphics().
\n
\n It's important to run all drawing functions between the beginDraw()\n and endDraw(). As the exception to this rule, smooth() should\n be run on the PGraphics object before beginDraw(). See the reference\n for smooth() for more detail.
\n
\n The createGraphics() function should almost never be used inside\n draw() because of the memory and time needed to set up the graphics.\n One-time or occasional use during draw() might be acceptable, but\n code that calls createGraphics() at 60 frames per second might run\n out of memory or freeze your sketch.
\n
\n Unlike the main drawing surface which is completely opaque, surfaces\n created with createGraphics() can have transparency. This makes it\n possible to draw into a graphics and maintain the alpha channel. By using\n save() to write a PNG or TGA file, the transparency of the graphics\n object will be honored.\n\n ", + "description": "Creates and returns a new PGraphics object. Use this class if you\n need to draw into an offscreen graphics buffer. The first two parameters\n define the width and height in pixels. The third, optional parameter\n specifies the renderer. It can be defined as P2D, P3D, PDF, or SVG. If the\n third parameter isn't used, the default renderer is set. The PDF and SVG\n renderers require the filename parameter.
\n
\n It's important to consider the renderer used with createGraphics()\n in relation to the main renderer specified in size(). For example,\n it's only possible to use P2D or P3D with createGraphics() when one\n of them is defined in size(). Unlike Processing 1.0, P2D and P3D use\n OpenGL for drawing, and when using an OpenGL renderer it's necessary for\n the main drawing surface to be OpenGL-based. If P2D or P3D are used as the\n renderer in size(), then any of the options can be used with\n createGraphics(). If the default renderer is used in size(),\n then only the default, PDF, or SVG can be used with\n createGraphics().
\n
\n It's important to run all drawing functions between the beginDraw()\n and endDraw(). As the exception to this rule, smooth() should\n be run on the PGraphics object before beginDraw(). See the reference\n for smooth() for more detail.
\n
\n The createGraphics() function should almost never be used inside\n draw() because of the memory and time needed to set up the graphics.\n One-time or occasional use during draw() might be acceptable, but\n code that calls createGraphics() at 60 frames per second might run\n out of memory or freeze your sketch.
\n
\n Unlike the main drawing surface which is completely opaque, surfaces\n created with createGraphics() can have transparency. This makes it\n possible to draw into a graphics and maintain the alpha channel. By using\n save() to write a PNG or TGA file, the transparency of the graphics\n object will be honored.\n\n ", "syntax": [ "createGraphics(w, h)", "createGraphics(w, h, renderer)", diff --git a/content/references/translations/en/processing/createImage_.json b/content/references/translations/en/processing/createImage_.json index b4e76cf37..af56dbb4f 100644 --- a/content/references/translations/en/processing/createImage_.json +++ b/content/references/translations/en/processing/createImage_.json @@ -2,7 +2,7 @@ "brief": "Creates a new PImage (the datatype for storing images)", "related": ["PImage", "PGraphics"], "name": "createImage()", - "description": "Creates a new PImage (the datatype for storing images). This provides a\n fresh buffer of pixels to play with. Set the size of the buffer with the\n width and height parameters. The format parameter\n defines how the pixels are stored. See the PImage reference for more information.\n

\n Be sure to include all three parameters, specifying only the width and\n height (but no format) will produce a strange error.\n

\n Advanced users please note that createImage() should be used instead of\n the syntax new PImage().\n\n\n ", + "description": "Creates a new PImage (the datatype for storing images). This provides a\n fresh buffer of pixels to play with. Set the size of the buffer with the\n width and height parameters. The format parameter\n defines how the pixels are stored. See the PImage reference for more information.\n

\n Be sure to include all three parameters, specifying only the width and\n height (but no format) will produce a strange error.\n

\n Advanced users please note that createImage() should be used instead of\n the syntax new PImage().\n\n ", "syntax": ["createImage(w, h, format)"], "returns": "PImage", "type": "function", diff --git a/content/references/translations/en/processing/createInput_.json b/content/references/translations/en/processing/createInput_.json index eabccdf36..1b2e8c3a7 100644 --- a/content/references/translations/en/processing/createInput_.json +++ b/content/references/translations/en/processing/createInput_.json @@ -2,7 +2,7 @@ "brief": "This is a function for advanced programmers to open a Java InputStream", "related": ["createOutput_", "selectOutput_", "selectInput_"], "name": "createInput()", - "description": "This is a function for advanced programmers to open a Java InputStream.\n It's useful if you want to use the facilities provided by PApplet to\n easily open files from the data folder or from a URL, but want an\n InputStream object so that you can use other parts of Java to take more\n control of how the stream is read.
\n
\n The filename passed in can be:
\n - A URL, for instance openStream(\"http://processing.org/\")
\n - A file in the sketch's data folder
\n - The full path to a file to be opened locally (when running as an\n application)
\n
\n If the requested item doesn't exist, null is returned. If not online,\n this will also check to see if the user is asking for a file whose name\n isn't properly capitalized. If capitalization is different, an error\n will be printed to the console. This helps prevent issues that appear\n when a sketch is exported to the web, where case sensitivity matters, as\n opposed to running from inside the Processing Development Environment on\n Windows or Mac OS, where case sensitivity is preserved but ignored.
\n
\n If the file ends with .gz, the stream will automatically be gzip\n decompressed. If you don't want the automatic decompression, use the\n related function createInputRaw().\n
\n In earlier releases, this function was called openStream().
\n
\n\n\n ", + "description": "This is a function for advanced programmers to open a Java InputStream.\n It's useful if you want to use the facilities provided by PApplet to\n easily open files from the data folder or from a URL, but want an\n InputStream object so that you can use other parts of Java to take more\n control of how the stream is read.
\n
\n The filename passed in can be:
\n - A URL, for instance openStream(\"http://processing.org/\")
\n - A file in the sketch's data folder
\n - The full path to a file to be opened locally (when running as an\n application)
\n
\n If the requested item doesn't exist, null is returned. If not online,\n this will also check to see if the user is asking for a file whose name\n isn't properly capitalized. If capitalization is different, an error\n will be printed to the console. This helps prevent issues that appear\n when a sketch is exported to the web, where case sensitivity matters, as\n opposed to running from inside the Processing Development Environment on\n Windows or macOS, where case sensitivity is preserved but ignored.
\n
\n If the file ends with .gz, the stream will automatically be gzip\n decompressed. If you don't want the automatic decompression, use the\n related function createInputRaw().\n
\n In earlier releases, this function was called openStream().
\n
\n\n\n ", "syntax": ["createInput(filename)"], "returns": "InputStream", "type": "function", diff --git a/content/references/translations/en/processing/createOutput_.json b/content/references/translations/en/processing/createOutput_.json index ff896c47f..fc782f00f 100644 --- a/content/references/translations/en/processing/createOutput_.json +++ b/content/references/translations/en/processing/createOutput_.json @@ -2,7 +2,7 @@ "brief": "Similar to createInput(), this creates a Java\n OutputStream for a given filename or path", "related": ["createInput_", "selectOutput_"], "name": "createOutput()", - "description": "Similar to createInput(), this creates a Java OutputStream\n for a given filename or path. The file will be created in the sketch\n folder, or in the same folder as an exported application.
\n
\n If the path does not exist, intermediate folders will be created. If an\n exception occurs, it will be printed to the console, and null will\n be returned.
\n
\n This function is a convenience over the Java approach that requires you to\n 1) create a FileOutputStream object, 2) determine the exact file location,\n and 3) handle exceptions. Exceptions are handled internally by the\n function, which is more appropriate for \"sketch\" projects.
\n
\n If the output filename ends with .gz, the output will be\n automatically GZIP compressed as it is written.", + "description": "Similar to createInput(), this creates a Java OutputStream\n for a given filename or path. The file will be created in the sketch\n folder, or in the same folder as an exported application.
\n
\n If the path does not exist, intermediate folders will be created. If an\n exception occurs, it will be printed to the console, and null will\n be returned.
\n
\n This function is a convenience over the Java approach that requires you to\n 1) create a FileOutputStream object, 2) determine the exact file location,\n and 3) handle exceptions. Exceptions are handled internally by the\n function, which is more appropriate for \"sketch\" projects.
\n
\n If the output filename ends with .gz, the output will be\n automatically GZIP compressed as it is written.", "syntax": ["createOutput(filename)"], "returns": "OutputStream", "type": "function", diff --git a/content/references/translations/en/processing/createReader_.json b/content/references/translations/en/processing/createReader_.json index 8527fae4f..bc5380e5e 100644 --- a/content/references/translations/en/processing/createReader_.json +++ b/content/references/translations/en/processing/createReader_.json @@ -2,7 +2,7 @@ "brief": "Creates a BufferedReader object that can be used to read\n files line-by-line as individual String objects", "related": ["createWriter_"], "name": "createReader()", - "description": "Creates a BufferedReader object that can be used to read files\n line-by-line as individual String objects. This is the complement to\n the createWriter() function. For more information about the\n BufferedReader class and its methods like readLine() and\n close used in the above example, please consult a Java\n reference.
\n
\n Starting with Processing release 0134, all files loaded and saved by the\n Processing API use UTF-8 encoding. In previous releases, the default\n encoding for your platform was used, which causes problems when files are\n moved to other platforms.", + "description": "Creates a BufferedReader object that can be used to read files\n line-by-line as individual String objects. This is the complement to\n the createWriter() function. For more information about the\n BufferedReader class and its methods like readLine() and\n close used in the above example, please consult a Java\n reference.
\n
\n Starting with Processing release 0134, all files loaded and saved by the\n Processing API use UTF-8 encoding. In previous releases, the default\n encoding for your platform was used, which causes problems when files are\n moved to other platforms.", "syntax": ["createReader(filename)"], "returns": "BufferedReader", "type": "function", diff --git a/content/references/translations/en/processing/createShape_.json b/content/references/translations/en/processing/createShape_.json index 75b5ceb54..8444f9a23 100644 --- a/content/references/translations/en/processing/createShape_.json +++ b/content/references/translations/en/processing/createShape_.json @@ -2,7 +2,7 @@ "brief": "The createShape() function is used to define a new shape", "related": ["PShape", "endShape_", "loadShape_"], "name": "createShape()", - "description": "The createShape() function is used to define a new shape.\n Once created, this shape can be drawn with the shape()\n function. The basic way to use the function defines new primitive\n shapes. One of the following parameters are used as the first\n parameter: ELLIPSE, RECT, ARC, TRIANGLE,\n SPHERE, BOX, QUAD, or LINE. The\n parameters for each of these different shapes are the same as their\n corresponding functions: ellipse(), rect(), arc(),\n triangle(), sphere(), box(), quad(), and\n line(). The first example above clarifies how this works.
\n
\n Custom, unique shapes can be made by using createShape() without\n a parameter. After the shape is started, the drawing attributes and\n geometry can be set directly to the shape within the beginShape()\n and endShape() methods. See the second example above for specifics,\n and the reference for beginShape() for all of its options.
\n
\n The createShape() function can also be used to make a complex\n shape made of other shapes. This is called a \"group\" and it's created by\n using the parameter GROUP as the first parameter. See the fourth\n example above to see how it works.
\n
\n After using createShape(), stroke and fill color can be set by\n calling methods like setFill() and setStroke(), as seen\n in the examples above. The complete list of methods and fields for the\n PShape class are in the Processing Javadoc.", + "description": "The createShape() function is used to define a new shape.\n Once created, this shape can be drawn with the shape()\n function. The basic way to use the function defines new primitive\n shapes. One of the following parameters are used as the first\n parameter: ELLIPSE, RECT, ARC, TRIANGLE,\n SPHERE, BOX, QUAD, or LINE. The\n parameters for each of these different shapes are the same as their\n corresponding functions: ellipse(), rect(), arc(),\n triangle(), sphere(), box(), quad(), and\n line(). The first example above clarifies how this works.
\n
\n Custom, unique shapes can be made by using createShape() without\n a parameter. After the shape is started, the drawing attributes and\n geometry can be set directly to the shape within the beginShape()\n and endShape() methods. See the second example above for specifics,\n and the reference for beginShape() for all of its options.
\n
\n The createShape() function can also be used to make a complex\n shape made of other shapes. This is called a \"group\" and it's created by\n using the parameter GROUP as the first parameter. See the fourth\n example above to see how it works.
\n
\n After using createShape(), stroke and fill color can be set by\n calling methods like setFill() and setStroke(), as seen\n in the examples above. The complete list of methods and fields for the\n PShape class are in the Processing Javadoc.", "syntax": ["createShape()", "createShape(type)", "createShape(kind, p)"], "returns": "PShape", "type": "function", diff --git a/content/references/translations/en/processing/createWriter_.json b/content/references/translations/en/processing/createWriter_.json index e754e4381..3341943b0 100644 --- a/content/references/translations/en/processing/createWriter_.json +++ b/content/references/translations/en/processing/createWriter_.json @@ -1,6 +1,6 @@ { "brief": "Creates a new file in the sketch folder, and a PrintWriter object\n to write to it", - "related": ["createReader_"], + "related": [], "name": "createWriter()", "description": "Creates a new file in the sketch folder, and a PrintWriter object\n to write to it. For the file to be made correctly, it should be flushed\n and must be closed with its flush() and close() methods\n (see above example).\n

\n Starting with Processing release 0134, all files loaded and saved by the\n Processing API use UTF-8 encoding. In previous releases, the default\n encoding for your platform was used, which causes problems when files\n are moved to other platforms.", "syntax": ["createWriter(filename)"], diff --git a/content/references/translations/en/processing/cursor_.json b/content/references/translations/en/processing/cursor_.json index 1c255dcf4..831c35a49 100644 --- a/content/references/translations/en/processing/cursor_.json +++ b/content/references/translations/en/processing/cursor_.json @@ -2,7 +2,7 @@ "brief": "Sets the cursor to a predefined symbol, an image, or makes it\n visible if already hidden", "related": ["noCursor_"], "name": "cursor()", - "description": "Sets the cursor to a predefined symbol or an image, or makes it visible if\n already hidden. If you are trying to set an image as the cursor, the\n recommended size is 16x16 or 32x32 pixels. The values for parameters\n x and y must be less than the dimensions of the image.
\n
\n Setting or hiding the cursor does not generally work with \"Present\" mode\n (when running full-screen).
\n
\n With the P2D and P3D renderers, a generic set of cursors are used because\n the OpenGL renderer doesn't have access to the default cursor images for\n each platform\n (Issue\n 3791).", + "description": "Sets the cursor to a predefined symbol or an image, or makes it visible if\n already hidden. If you are trying to set an image as the cursor, the\n recommended size is 16x16 or 32x32 pixels. The values for parameters\n x and y must be less than the dimensions of the image.
\n
\n Setting or hiding the cursor does not generally work with \"Present\" mode\n (when running full-screen).
\n
\n With the P2D and P3D renderers, a generic set of cursors are used because\n the OpenGL renderer doesn't have access to the default cursor images for\n each platform\n (Issue\n 3791).", "syntax": ["cursor(kind)", "cursor(img)", "cursor(img, x, y)", "cursor()"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/curveDetail_.json b/content/references/translations/en/processing/curveDetail_.json index 2bf2987b5..d8210846f 100644 --- a/content/references/translations/en/processing/curveDetail_.json +++ b/content/references/translations/en/processing/curveDetail_.json @@ -2,7 +2,7 @@ "brief": "Sets the resolution at which curves display", "related": ["curve_", "curveVertex_", "curveTightness_"], "name": "curveDetail()", - "description": "Sets the resolution at which curves display. The default value is 20.\n This function is only useful when using the P3D or P2D renderer as the default\n JAVA2D renderer does not use this information.", + "description": "Sets the resolution at which curves display. The default value is 20.\n This function is only useful when using the P3D renderer as the default\n P2D renderer does not use this information.", "syntax": ["curveDetail(detail)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/curveTangent_.json b/content/references/translations/en/processing/curveTangent_.json index 87b312402..d5b47ac39 100644 --- a/content/references/translations/en/processing/curveTangent_.json +++ b/content/references/translations/en/processing/curveTangent_.json @@ -2,7 +2,7 @@ "brief": "Calculates the tangent of a point on a curve", "related": ["curve_", "curveVertex_", "curvePoint_", "bezierTangent_"], "name": "curveTangent()", - "description": "Calculates the tangent of a point on a curve. There's a good definition\n of tangent on Wikipedia.\n\n\n ", + "description": "Calculates the tangent of a point on a curve. There's a good definition\n of tangent on Wikipedia.\n\n ", "syntax": ["curveTangent(a, b, c, d, t)"], "returns": "float", "type": "function", diff --git a/content/references/translations/en/processing/curveVertex_.json b/content/references/translations/en/processing/curveVertex_.json index 4b5a7fb1a..9b611b80b 100644 --- a/content/references/translations/en/processing/curveVertex_.json +++ b/content/references/translations/en/processing/curveVertex_.json @@ -9,7 +9,7 @@ "quadraticVertex_" ], "name": "curveVertex()", - "description": "Specifies vertex coordinates for curves. This function may only be used\n between beginShape() and endShape() and only when there is\n no MODE parameter specified to beginShape(). The first and last\n points in a series of curveVertex() lines will be used to guide\n the beginning and end of a the curve. A minimum of four points is\n required to draw a tiny curve between the second and third points.\n Adding a fifth point with curveVertex() will draw the curve\n between the second, third, and fourth points. The curveVertex()\n function is an implementation of Catmull-Rom splines. Using the 3D\n version requires rendering with P3D (see the Environment reference for\n more information).", + "description": "Specifies vertex coordinates for curves. This function may only be used\n between beginShape() and endShape() and only when there is\n no MODE parameter specified to beginShape(). The first and last\n points in a series of curveVertex() lines will be used to guide\n the beginning and end of the curve. A minimum of four points is\n required to draw a tiny curve between the second and third points.\n Adding a fifth point with curveVertex() will draw the curve\n between the second, third, and fourth points. The curveVertex()\n function is an implementation of Catmull-Rom splines. Using the 3D\n version requires rendering with P3D (see the Environment reference for\n more information).", "syntax": ["curveVertex(x, y)", "curveVertex(x, y, z)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/curve_.json b/content/references/translations/en/processing/curve_.json index a6ee50e4e..42efe42b0 100644 --- a/content/references/translations/en/processing/curve_.json +++ b/content/references/translations/en/processing/curve_.json @@ -2,7 +2,7 @@ "brief": "Draws a curved line on the screen", "related": ["curveVertex_", "curveTightness_", "bezier_"], "name": "curve()", - "description": "Draws a curved line on the screen. The first and second parameters\n specify the beginning control point and the last two parameters specify\n the ending control point. The middle parameters specify the start and\n stop of the curve. Longer curves can be created by putting a series of\n curve() functions together or using curveVertex(). An\n additional function called curveTightness() provides control for\n the visual quality of the curve. The curve() function is an\n implementation of Catmull-Rom splines. Using the 3D version requires\n rendering with P3D (see the Environment reference for more information).\n\n\n ", + "description": "Draws a curved line on the screen. The first and second parameters\n specify the beginning control point and the last two parameters specify\n the ending control point. The middle parameters specify the start and\n stop of the curve. Longer curves can be created by putting a series of\n curve() functions together or using curveVertex(). An\n additional function called curveTightness() provides control for\n the visual quality of the curve. The curve() function is an\n implementation of Catmull-Rom splines. Using the 3D version requires\n rendering with P3D (see the Environment reference for more information).\n\n ", "syntax": [ "curve(x1, y1, x2, y2, x3, y3, x4, y4)", "curve(x1, y1, z1, x2, y2, z2, x3, y3, z3, x4, y4, z4)" diff --git a/content/references/translations/en/processing/day_.json b/content/references/translations/en/processing/day_.json index a3e88528d..dfe3233b1 100644 --- a/content/references/translations/en/processing/day_.json +++ b/content/references/translations/en/processing/day_.json @@ -1,8 +1,8 @@ { - "brief": "Returns the current day as a value from 1 - 31", + "brief": "Returns the current day as a value from 1 to 31", "related": ["millis_", "second_", "minute_", "hour_", "month_", "year_"], "name": "day()", - "description": "Processing communicates with the clock on your computer. The\n day() function returns the current day as a value from 1 - 31.\n\n\n ", + "description": "Processing communicates with the clock on your computer. The\n day() function returns the current day as a value from 1 to 31.\n\n ", "syntax": ["day()"], "returns": "int", "type": "function", diff --git a/content/references/translations/en/processing/delay_.json b/content/references/translations/en/processing/delay_.json index e411ee607..4751d8cdc 100644 --- a/content/references/translations/en/processing/delay_.json +++ b/content/references/translations/en/processing/delay_.json @@ -2,7 +2,7 @@ "brief": "The delay() function causes the program to halt for a specified time", "related": ["frameRate", "draw_"], "name": "delay()", - "description": "The delay() function causes the program to halt for a specified time.\n Delay times are specified in thousandths of a second. For example,\n running delay(3000) will stop the program for three seconds and\n delay(500) will stop the program for a half-second.\n\n The screen only updates when the end of draw() is reached, so delay()\n cannot be used to slow down drawing. For instance, you cannot use delay()\n to control the timing of an animation.\n\n The delay() function should only be used for pausing scripts (i.e.\n a script that needs to pause a few seconds before attempting a download,\n or a sketch that needs to wait a few milliseconds before reading from\n the serial port).", + "description": "The delay() function causes the program to halt for a specified time.\n Delay times are specified in thousandths of a second. For example,\n running delay(3000) will stop the program for three seconds and\n delay(500) will stop the program for a half-second.\n

\n The screen only updates when the end of draw() is reached, so delay()\n cannot be used to slow down drawing. For instance, you cannot use delay()\n to control the timing of an animation.\n

\n The delay() function should only be used for pausing scripts (i.e.\n a script that needs to pause a few seconds before attempting a download,\n or a sketch that needs to wait a few milliseconds before reading from\n the serial port).", "syntax": ["delay(napTime)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/directionalLight_.json b/content/references/translations/en/processing/directionalLight_.json index 8a00a5b4f..baaef2339 100644 --- a/content/references/translations/en/processing/directionalLight_.json +++ b/content/references/translations/en/processing/directionalLight_.json @@ -2,7 +2,7 @@ "brief": "Adds a directional light", "related": ["lights_", "ambientLight_", "pointLight_", "spotLight_"], "name": "directionalLight()", - "description": "Adds a directional light. Directional light comes from one direction and\n is stronger when hitting a surface squarely and weaker if it hits at a a\n gentle angle. After hitting a surface, a directional lights scatters in\n all directions. Lights need to be included in the draw() to\n remain persistent in a looping program. Placing them in the\n setup() of a looping program will cause them to only have an\n effect the first time through the loop. The affect of the v1,\n v2, and v3 parameters is determined by the current color\n mode. The nx, ny, and nz parameters specify the\n direction the light is facing. For example, setting ny to -1 will\n cause the geometry to be lit from below (the light is facing directly upward).", + "description": "Adds a directional light. Directional light comes from one direction and\n is stronger when hitting a surface squarely and weaker if it hits at a\n gentle angle. After hitting a surface, a directional lights scatters in\n all directions. Lights need to be included in the draw() to\n remain persistent in a looping program. Placing them in the\n setup() of a looping program will cause them to only have an\n effect the first time through the loop. The affect of the v1,\n v2, and v3 parameters is determined by the current color\n mode. The nx, ny, and nz parameters specify the\n direction the light is facing. For example, setting ny to -1 will\n cause the geometry to be lit from below (the light is facing directly upward).", "syntax": ["directionalLight(v1, v2, v3, nx, ny, nz)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/displayHeight.json b/content/references/translations/en/processing/displayHeight.json index 379b06a77..d2f94aedc 100644 --- a/content/references/translations/en/processing/displayHeight.json +++ b/content/references/translations/en/processing/displayHeight.json @@ -2,7 +2,7 @@ "brief": "Variable that stores the height of the computer screen", "related": ["displayWidth", "size_"], "name": "displayHeight", - "description": "System variable that stores the height of the computer screen. For\n example, if the current screen resolution is 1920x1080,\n displayWidth is 1920 and displayHeight is 1080.", + "description": "System variable that stores the height of the computer screen.\n For example, if the current screen resolution is 1920x1080,\n displayWidth is 1920 and displayHeight is 1080.", "category": "environment", "subcategory": "", "type": "other" diff --git a/content/references/translations/en/processing/displayWidth.json b/content/references/translations/en/processing/displayWidth.json index fa8691153..e5ebb8269 100644 --- a/content/references/translations/en/processing/displayWidth.json +++ b/content/references/translations/en/processing/displayWidth.json @@ -2,7 +2,7 @@ "brief": "Variable that stores the width of the computer screen", "related": ["displayHeight", "size_"], "name": "displayWidth", - "description": "System variable that stores the width of the computer screen. For\n example, if the current screen resolution is 1920x1080,\n displayWidth is 1920 and displayHeight is 1080.", + "description": "System variable that stores the width of the computer screen.\n For example, if the current screen resolution is 1920x1080,\n displayWidth is 1920 and displayHeight is 1080.", "category": "environment", "subcategory": "", "type": "other" diff --git a/content/references/translations/en/processing/draw_.json b/content/references/translations/en/processing/draw_.json index 6cabebbb3..426bf9c60 100644 --- a/content/references/translations/en/processing/draw_.json +++ b/content/references/translations/en/processing/draw_.json @@ -9,7 +9,7 @@ "background_" ], "name": "draw()", - "description": "Called directly after setup(), the draw() function continuously\n executes the lines of code contained inside its block until the program is\n stopped or noLoop() is called. draw() is called automatically\n and should never be called explicitly. All Processing programs update the\n screen at the end of draw(), never earlier.
\n
\n To stop the code inside of draw() from running continuously, use\n noLoop(), redraw() and loop(). If noLoop() is\n used to stop the code in draw() from running, then redraw()\n will cause the code inside draw() to run a single time, and\n loop() will cause the code inside draw() to resume running\n continuously.
\n
\n The number of times draw() executes in each second may be controlled\n with the frameRate() function.
\n
\n It is common to call background() near the beginning of the\n draw() loop to clear the contents of the window, as shown in the first\n example above. Since pixels drawn to the window are cumulative, omitting\n background() may result in unintended results.
\n
\n There can only be one draw() function for each sketch, and draw()\n must exist if you want the code to run continuously, or to process events such\n as mousePressed(). Sometimes, you might have an empty call to\n draw() in your program, as shown in the second example above.", + "description": "Called directly after setup(), the draw() function continuously\n executes the lines of code contained inside its block until the program is\n stopped or noLoop() is called. draw() is called automatically\n and should never be called explicitly. All Processing programs update the\n screen at the end of draw(), never earlier.
\n
\n To stop the code inside of draw() from running continuously, use\n noLoop(), redraw() and loop(). If noLoop() is\n used to stop the code in draw() from running, then redraw()\n will cause the code inside draw() to run a single time, and\n loop() will cause the code inside draw() to resume running\n continuously.
\n
\n The number of times draw() executes in each second may be controlled\n with the frameRate() function.
\n
\n It is common to call background() near the beginning of the\n draw() loop to clear the contents of the window, as shown in the first\n example above. Since pixels drawn to the window are cumulative, omitting\n background() may result in unintended results.
\n
\n There can only be one draw() function for each sketch, and draw()\n must exist if you want the code to run continuously, or to process events such\n as mousePressed(). Sometimes, you might have an empty call to\n draw() in your program, as shown in the second example above.", "syntax": ["draw()"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/ellipseMode_.json b/content/references/translations/en/processing/ellipseMode_.json index 855e0edae..e8cfbd06b 100644 --- a/content/references/translations/en/processing/ellipseMode_.json +++ b/content/references/translations/en/processing/ellipseMode_.json @@ -2,7 +2,7 @@ "brief": "The origin of the ellipse is modified by the ellipseMode()\n function", "related": ["ellipse_", "arc_"], "name": "ellipseMode()", - "description": "Modifies the location from which ellipses are drawn by changing the way in\n which parameters given to ellipse() are interpreted.
\n
\n The default mode is ellipseMode(CENTER), which interprets the first\n two parameters of ellipse() as the shape's center point, while the\n third and fourth parameters are its width and height.
\n
\n ellipseMode(RADIUS) also uses the first two parameters of\n ellipse() as the shape's center point, but uses the third and fourth\n parameters to specify half of the shape's width and height.
\n
\n ellipseMode(CORNER) interprets the first two parameters of\n ellipse() as the upper-left corner of the shape, while the third and\n fourth parameters are its width and height.
\n
\n ellipseMode(CORNERS) interprets the first two parameters of\n ellipse() as the location of one corner of the ellipse's bounding box,\n and the third and fourth parameters as the location of the opposite\n corner.
\n
\n The parameter must be written in ALL CAPS because Processing is a\n case-sensitive language.", + "description": "Modifies the location from which ellipses are drawn by changing the way in\n which parameters given to ellipse() are interpreted.
\n
\n The default mode is ellipseMode(CENTER), which interprets the first\n two parameters of ellipse() as the shape's center point, while the\n third and fourth parameters are its width and height.
\n
\n ellipseMode(RADIUS) also uses the first two parameters of\n ellipse() as the shape's center point, but uses the third and fourth\n parameters to specify half of the shape's width and height.
\n
\n ellipseMode(CORNER) interprets the first two parameters of\n ellipse() as the upper-left corner of the shape, while the third and\n fourth parameters are its width and height.
\n
\n ellipseMode(CORNERS) interprets the first two parameters of\n ellipse() as the location of one corner of the ellipse's bounding box,\n and the third and fourth parameters as the location of the opposite\n corner.
\n
\n The parameter must be written in ALL CAPS because Processing is a\n case-sensitive language.", "syntax": ["ellipseMode(mode)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/endContour_.json b/content/references/translations/en/processing/endContour_.json index 8cbdc5c84..e35e47132 100644 --- a/content/references/translations/en/processing/endContour_.json +++ b/content/references/translations/en/processing/endContour_.json @@ -2,7 +2,7 @@ "brief": "Stops recording vertices for the shape", "related": [], "name": "endContour()", - "description": "Use the beginContour() and endContour() function to\n create negative shapes within shapes such as the center of the\n letter 'O'. beginContour() begins recording vertices for\n the shape and endContour() stops recording. The vertices\n that define a negative shape must \"wind\" in the opposite direction\n from the exterior shape. First draw vertices for the exterior shape\n in clockwise order, then for internal shapes, draw vertices counterclockwise.
\n
\n These functions can only be used within a beginShape()/endShape()\n pair and transformations such as translate(), rotate(), and\n scale() do not work within a beginContour()/endContour()\n pair. It is also not possible to use other shapes, such as ellipse()\n or rect() within.", + "description": "Use the beginContour() and endContour() function to\n create negative shapes within shapes such as the center of the\n letter \"O\". beginContour() begins recording vertices for\n the shape and endContour() stops recording. The vertices\n that define a negative shape must \"wind\" in the opposite direction\n from the exterior shape. First draw vertices for the exterior shape\n in clockwise order, then for internal shapes, draw vertices counterclockwise.
\n
\n These functions can only be used within a beginShape()/endShape()\n pair and transformations such as translate(), rotate(), and\n scale() do not work within a beginContour()/endContour()\n pair. It is also not possible to use other shapes, such as ellipse()\n or rect() within.", "syntax": ["endContour()"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/endShape_.json b/content/references/translations/en/processing/endShape_.json index 0eaa1a3e4..e09a0df8d 100644 --- a/content/references/translations/en/processing/endShape_.json +++ b/content/references/translations/en/processing/endShape_.json @@ -2,7 +2,7 @@ "brief": "the companion to beginShape() and may only be called after beginShape()", "related": ["PShape", "beginShape_"], "name": "endShape()", - "description": "The endShape() function is the companion to beginShape()\n and may only be called after beginShape(). When endshape()\n is called, all of image data defined since the previous call to\n beginShape() is written into the image buffer. The constant CLOSE\n as the value for the MODE parameter to close the shape (to connect the\n beginning and the end).", + "description": "The endShape() function is the companion to beginShape()\n and may only be called after beginShape(). When endshape()\n is called, all the image data defined since the previous call to\n beginShape() is written into the image buffer. The constant CLOSE\n as the value for the MODE parameter to close the shape (to connect the\n beginning and the end).", "syntax": ["endShape()", "endShape(mode)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/exit_.json b/content/references/translations/en/processing/exit_.json index d09c0a0e9..0c1b23f28 100644 --- a/content/references/translations/en/processing/exit_.json +++ b/content/references/translations/en/processing/exit_.json @@ -2,7 +2,7 @@ "brief": "Quits/stops/exits the program", "related": [], "name": "exit()", - "description": "Quits/stops/exits the program. Programs without a draw() function\n exit automatically after the last line has run, but programs with\n draw() run continuously until the program is manually stopped or\n exit() is run.
\n
\n Rather than terminating immediately, exit() will cause the sketch\n to exit after draw() has completed (or after setup()\n completes if called during the setup() function).
\n
\n For Java programmers, this is not the same as System.exit().\n Further, System.exit() should not be used because closing out an\n application while draw() is running may cause a crash\n (particularly with P3D).", + "description": "Quits/stops/exits the program. Programs without a draw() function\n exit automatically after the last line has run, but programs with\n draw() run continuously until the program is manually stopped or\n exit() is run.
\n
\n Rather than terminating immediately, exit() will cause the sketch\n to exit after draw() has completed (or after setup()\n completes if called during the setup() function).
\n
\n For Java programmers, this is not the same as System.exit().\n Further, System.exit() should not be used because closing out an\n application while draw() is running may cause a crash\n (particularly with P3D).", "syntax": ["exit()"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/expand_.json b/content/references/translations/en/processing/expand_.json index 0b0720f3e..aa0a18965 100644 --- a/content/references/translations/en/processing/expand_.json +++ b/content/references/translations/en/processing/expand_.json @@ -2,7 +2,7 @@ "brief": "Increases the size of an array", "related": ["shorten_"], "name": "expand()", - "description": "Increases the size of a one-dimensional array. By default, this function\n doubles the size of the array, but the optional newSize parameter\n provides precise control over the increase in size.
\n
\n When using an array of objects, the data returned from the function must be\n cast to the object array's data type. For example: SomeClass[] items =\n (SomeClass[]) expand(originalArray)", + "description": "Increases the size of a one-dimensional array. By default, this function\n doubles the size of the array, but the optional newSize parameter\n provides precise control over the increase in size.\n

\n When using an array of objects, the data returned from the function must be\n cast to the object array's data type. For example: SomeClass[] items =\n (SomeClass[]) expand(originalArray)", "syntax": ["expand(list)", "expand(list, newSize)"], "returns": "boolean[], byte[], char[], int[], long[], float[], double[], String[], or Object", "type": "function", diff --git a/content/references/translations/en/processing/filter_.json b/content/references/translations/en/processing/filter_.json index 666dc69e6..9cdc3b9de 100644 --- a/content/references/translations/en/processing/filter_.json +++ b/content/references/translations/en/processing/filter_.json @@ -2,7 +2,7 @@ "brief": "Converts the image to grayscale or black and white", "related": [], "name": "filter()", - "description": "Filters the image as defined by one of the following modes:
\n
\n THRESHOLD
\n Converts the image to black and white pixels depending if they are above or\n below the threshold defined by the level parameter. The parameter must be\n between 0.0 (black) and 1.0 (white). If no level is specified, 0.5 is\n used.
\n
\n GRAY
\n Converts any colors in the image to grayscale equivalents. No parameter is\n used.
\n
\n OPAQUE
\n Sets the alpha channel to entirely opaque. No parameter is used.
\n
\n INVERT
\n Sets each pixel to its inverse value. No parameter is used.
\n
\n POSTERIZE
\n Limits each channel of the image to the number of colors specified as the\n parameter. The parameter can be set to values between 2 and 255, but results\n are most noticeable in the lower ranges.
\n
\n BLUR
\n Executes a Gaussian blur with the level parameter specifying the extent of\n the blurring. If no parameter is used, the blur is equivalent to Gaussian\n blur of radius 1. Larger values increase the blur.
\n
\n ERODE
\n Reduces the light areas. No parameter is used.
\n
\n DILATE
\n Increases the light areas. No parameter is used.\n\n\n ", + "description": "Filters the image as defined by one of the following modes:
\n
\n THRESHOLD
\n Converts the image to black and white pixels depending on if they\n are above or below the threshold defined by the level parameter.\n The parameter must be between 0.0 (black) and 1.0 (white).\n If no level is specified, 0.5 is used.
\n
\n GRAY
\n Converts any colors in the image to grayscale equivalents. No parameter is\n used.
\n
\n OPAQUE
\n Sets the alpha channel to entirely opaque. No parameter is used.
\n
\n INVERT
\n Sets each pixel to its inverse value. No parameter is used.
\n
\n POSTERIZE
\n Limits each channel of the image to the number of colors specified as the\n parameter. The parameter can be set to values between 2 and 255, but results\n are most noticeable in the lower ranges.
\n
\n BLUR
\n Executes a Gaussian blur with the level parameter specifying the extent of\n the blurring. If no parameter is used, the blur is equivalent to Gaussian\n blur of radius 1. Larger values increase the blur.
\n
\n ERODE
\n Reduces the light areas. No parameter is used.
\n
\n DILATE
\n Increases the light areas. No parameter is used.\n\n ", "syntax": ["filter(shader)", "filter(kind)", "filter(kind, param)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/frameCount.json b/content/references/translations/en/processing/frameCount.json index 44a19b5e2..f6b917bd7 100644 --- a/content/references/translations/en/processing/frameCount.json +++ b/content/references/translations/en/processing/frameCount.json @@ -2,7 +2,7 @@ "brief": "The system variable that contains the number of frames\n displayed since the program started", "related": ["frameRate_", "frameRate"], "name": "frameCount", - "description": "The system variable frameCount contains the number of frames\n displayed since the program started. Inside setup() the value is\n 0 and and after the first iteration of draw it is 1, etc.", + "description": "The system variable frameCount contains the number o\n frames displayed since the program started. Inside setup()\n the value is 0 and during the first iteration of draw it is 1, etc.", "category": "environment", "subcategory": "", "type": "other" diff --git a/content/references/translations/en/processing/frustum_.json b/content/references/translations/en/processing/frustum_.json index ad3b85dee..127be5f0c 100644 --- a/content/references/translations/en/processing/frustum_.json +++ b/content/references/translations/en/processing/frustum_.json @@ -2,7 +2,7 @@ "brief": "Sets a perspective matrix defined through the parameters", "related": ["camera_", "beginCamera_", "endCamera_", "perspective_"], "name": "frustum()", - "description": "Sets a perspective matrix as defined by the parameters.
\n
\n A frustum is a geometric form: a pyramid with its top cut off. With the\n viewer's eye at the imaginary top of the pyramid, the six planes of the\n frustum act as clipping planes when rendering a 3D view. Thus, any form\n inside the clipping planes is rendered and visible; anything outside those\n planes is not visible.
\n
\n Setting the frustum has the effect of changing the perspective with\n which the scene is rendered. This can be achieved more simply in many cases\n by using perspective().
\n
\n Note that the near value must be greater than zero (as the point of the\n frustum \"pyramid\" cannot converge \"behind\" the viewer). Similarly, the far\n value must be greater than the near value (as the \"far\" plane of the frustum\n must be \"farther away\" from the viewer than the near plane).
\n
\n Works like glFrustum, except it wipes out the current perspective matrix\n rather than multiplying itself with it.", + "description": "Sets a perspective matrix as defined by the parameters.
\n
\n A frustum is a geometric form: a pyramid with its top cut off. With the\n viewer's eye at the imaginary top of the pyramid, the six planes of the\n frustum act as clipping planes when rendering a 3D view. Thus, any form\n inside the clipping planes is rendered and visible; anything outside those\n planes is not visible.
\n
\n Setting the frustum has the effect of changing the perspective with\n which the scene is rendered. This can be achieved more simply in many cases\n by using perspective().
\n
\n Note that the near value must be greater than zero (as the point of the\n frustum \"pyramid\" cannot converge \"behind\" the viewer). Similarly, the far\n value must be greater than the near value (as the \"far\" plane of the frustum\n must be \"farther away\" from the viewer than the near plane).
\n
\n Works like glFrustum, except it wipes out the current perspective matrix\n rather than multiplying itself with it.", "syntax": ["frustum(left, right, bottom, top, near, far)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/fullScreen_.json b/content/references/translations/en/processing/fullScreen_.json index 6eaeadaa9..091e44570 100644 --- a/content/references/translations/en/processing/fullScreen_.json +++ b/content/references/translations/en/processing/fullScreen_.json @@ -2,7 +2,7 @@ "brief": "Opens a sketch using the full size of the computer's display", "related": ["settings_", "setup_", "size_", "smooth_"], "name": "fullScreen()", - "description": "This function is new for Processing 3.0. It opens a sketch using the full\n size of the computer's display. This function must be the first line in\n setup(). The size() and fullScreen() functions cannot\n both be used in the same program, just choose one.
\n
\n When fullScreen() is used without a parameter, it draws the sketch\n to the screen currently selected inside the Preferences window. When it is\n used with a single parameter, this number defines the screen to display to\n program on (e.g. 1, 2, 3...). When used with two parameters, the first\n defines the renderer to use (e.g. P2D) and the second defines the screen.\n The SPAN parameter can be used in place of a screen number to draw\n the sketch as a full-screen window across all of the attached displays if\n there are more than one.
\n
\n Prior to Processing 3.0, a full-screen program was defined with\n size(displayWidth, displayHeight).", + "description": "This function is new for Processing 3.0. It opens a sketch using the full\n size of the computer's display. This function must be the first line in\n setup(). The size() and fullScreen() functions cannot\n both be used in the same program, just choose one.
\n
\n When fullScreen() is used without a parameter, it draws the sketch\n to the screen currently selected inside the Preferences window. When it is\n used with a single parameter, this number defines the screen to display to\n program on (e.g. 1, 2, 3...). When used with two parameters, the first\n defines the renderer to use (e.g. P2D) and the second defines the screen.\n The SPAN parameter can be used in place of a screen number to draw\n the sketch as a full-screen window across all the attached displays if\n there are more than one.
\n
\n Prior to Processing 3.0, a full-screen program was defined with\n size(displayWidth, displayHeight).", "syntax": [ "fullScreen()", "fullScreen(display)", diff --git a/content/references/translations/en/processing/get_.json b/content/references/translations/en/processing/get_.json index 42a4a3caa..0eb5f31aa 100644 --- a/content/references/translations/en/processing/get_.json +++ b/content/references/translations/en/processing/get_.json @@ -2,7 +2,7 @@ "brief": "Reads the color of any pixel or grabs a rectangle of pixels", "related": ["set_", "pixels", "copy_"], "name": "get()", - "description": "Reads the color of any pixel or grabs a section of an image. If no\n parameters are specified, the entire image is returned. Use the x\n and y parameters to get the value of one pixel. Get a section of\n the display window by specifying an additional width and\n height parameter. When getting an image, the x and\n y parameters define the coordinates for the upper-left corner of\n the image, regardless of the current imageMode().
\n
\n If the pixel requested is outside of the image window, black is\n returned. The numbers returned are scaled according to the current color\n ranges, but only RGB values are returned by this function. For example,\n even though you may have drawn a shape with colorMode(HSB), the\n numbers returned will be in RGB format.
\n
\n Getting the color of a single pixel with get(x, y) is easy, but\n not as fast as grabbing the data directly from pixels[]. The\n equivalent statement to get(x, y) using pixels[] is\n pixels[y*width+x]. See the reference for pixels[] for more information.\n\n\n ", + "description": "Reads the color of any pixel or grabs a section of an image. If no\n parameters are specified, the entire image is returned. Use the x\n and y parameters to get the value of one pixel. Get a section of\n the display window by specifying an additional width and\n height parameter. When getting an image, the x and\n y parameters define the coordinates for the upper-left corner of\n the image, regardless of the current imageMode().
\n
\n If the pixel requested is outside the image window, black is returned.\n The numbers returned are scaled according to the current color\n ranges, but only RGB values are returned by this function. For example,\n even though you may have drawn a shape with colorMode(HSB), the\n numbers returned will be in RGB format.
\n
\n Getting the color of a single pixel with get(x, y) is easy, but\n not as fast as grabbing the data directly from pixels[]. The\n equivalent statement to get(x, y) using pixels[] is\n pixels[y*width+x]. See the reference for pixels[] for more information.\n\n ", "syntax": ["get(x, y)", "get(x, y, w, h)", "get()"], "returns": "int or PImage", "type": "function", diff --git a/content/references/translations/en/processing/green_.json b/content/references/translations/en/processing/green_.json index da39a3391..e4fa5b20e 100644 --- a/content/references/translations/en/processing/green_.json +++ b/content/references/translations/en/processing/green_.json @@ -10,7 +10,7 @@ "rightshift_" ], "name": "green()", - "description": "Extracts the green value from a color, scaled to match current\n colorMode(). The value is always returned as a float, so be careful\n not to assign it to an int value.
\n
\n The green() function is easy to use and understand, but it is slower\n than a technique called bit shifting. When working in colorMode(RGB,\n 255), you can achieve the same results as green() but with greater\n speed by using the right shift operator (>>) with a bit mask. For\n example, the following two lines of code are equivalent means of getting the\n green value of the color value c:
\n
\n\n

\n float g1 = green(c); // Simpler, but slower to calculate\n float g2 = c >> 8 & 0xFF; // Very fast to calculate\n 
", + "description": "Extracts the green value from a color, scaled to match current\n colorMode(). The value is always returned as a float, so be careful\n not to assign it to an int value.
\n
\n The green() function is easy to use and understand, but it is slower\n than a technique called bit shifting. When working in colorMode(RGB,\n 255), you can achieve the same results as green() but with greater\n speed by using the right shift operator (>>) with a bit mask. For\n example, the following two lines of code are equivalent means of getting the\n green value of the color value c:
\n
\n\n
\n float g1 = green(c); // Simpler, but slower to calculate\n float g2 = c >> 8 & 0xFF; // Very fast to calculate\n 
", "syntax": ["green(rgb)"], "returns": "float", "type": "function", diff --git a/content/references/translations/en/processing/hex_.json b/content/references/translations/en/processing/hex_.json index 5a5a970ca..665b72f2b 100644 --- a/content/references/translations/en/processing/hex_.json +++ b/content/references/translations/en/processing/hex_.json @@ -2,7 +2,7 @@ "brief": "Converts a byte, char, int, or color to a String containing the\n equivalent hexadecimal notation", "related": ["unhex_", "binary_", "unbinary_"], "name": "hex()", - "description": "Converts an int, byte, char, or color to a\n String containing the equivalent hexadecimal notation. For example,\n the color value produced by color(0, 102, 153) will convert\n to the String value \"FF006699\". This function can help make\n your geeky debugging sessions much happier.
\n
\n Note that the maximum number of digits is 8, because an int value\n can only represent up to 32 bits. Specifying more than 8 digits will not\n increase the length of the String further.", + "description": "Converts an int, byte, char, or color to a\n String containing the equivalent hexadecimal notation. For example,\n the color value produced by color(0, 102, 153) will convert\n to the String value \"FF006699\". This function can help make\n your geeky debugging sessions much happier.
\n
\n Note that the maximum number of digits is 8, because an int value\n can only represent up to 32 bits. Specifying more than 8 digits will not\n increase the length of the String further.", "syntax": ["hex(value)", "hex(value, digits)"], "returns": "String", "type": "function", diff --git a/content/references/translations/en/processing/hour_.json b/content/references/translations/en/processing/hour_.json index c357687fa..bf4807095 100644 --- a/content/references/translations/en/processing/hour_.json +++ b/content/references/translations/en/processing/hour_.json @@ -1,8 +1,8 @@ { - "brief": "Returns the current hour as a value from 0 - 23", + "brief": "Returns the current hour as a value from 0 to 23", "related": ["millis_", "second_", "minute_", "day_", "month_", "year_"], "name": "hour()", - "description": "Processing communicates with the clock on your computer. The\n hour() function returns the current hour as a value from 0 - 23.", + "description": "Processing communicates with the clock on your computer. The\n hour() function returns the current hour as a value from 0 to 23.", "syntax": ["hour()"], "returns": "int", "type": "function", diff --git a/content/references/translations/en/processing/imageMode_.json b/content/references/translations/en/processing/imageMode_.json index d187feeb4..257ccb65d 100644 --- a/content/references/translations/en/processing/imageMode_.json +++ b/content/references/translations/en/processing/imageMode_.json @@ -2,7 +2,7 @@ "brief": "Modifies the location from which images draw", "related": ["loadImage_", "PImage", "image_", "background_"], "name": "imageMode()", - "description": "Modifies the location from which images are drawn by changing the way in\n which parameters given to image() are interpreted.
\n
\n The default mode is imageMode(CORNER), which interprets the second and\n third parameters of image() as the upper-left corner of the image. If\n two additional parameters are specified, they are used to set the image's\n width and height.
\n
\n imageMode(CORNERS) interprets the second and third parameters of\n image() as the location of one corner, and the fourth and fifth\n parameters as the opposite corner.
\n
\n imageMode(CENTER) interprets the second and third parameters of\n image() as the image's center point. If two additional parameters are\n specified, they are used to set the image's width and height.
\n
\n The parameter must be written in ALL CAPS because Processing is a\n case-sensitive language.", + "description": "Modifies the location from which images are drawn by changing the way in\n which parameters given to image() are interpreted.
\n
\n The default mode is imageMode(CORNER), which interprets the second and\n third parameters of image() as the upper-left corner of the image. If\n two additional parameters are specified, they are used to set the image's\n width and height.
\n
\n imageMode(CORNERS) interprets the second and third parameters of\n image() as the location of one corner, and the fourth and fifth\n parameters as the opposite corner.
\n
\n imageMode(CENTER) interprets the second and third parameters of\n image() as the image's center point. If two additional parameters are\n specified, they are used to set the image's width and height.
\n
\n The parameter must be written in ALL CAPS because Processing is a\n case-sensitive language.", "syntax": ["imageMode(mode)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/image_.json b/content/references/translations/en/processing/image_.json index 25c415580..83f4b5426 100644 --- a/content/references/translations/en/processing/image_.json +++ b/content/references/translations/en/processing/image_.json @@ -9,7 +9,7 @@ "alpha_" ], "name": "image()", - "description": "The image() function draws an image to the display window. Images must\n be in the sketch's \"data\" directory to load correctly. Select \"Add file...\"\n from the \"Sketch\" menu to add the image to the data directory, or just drag\n the image file onto the sketch window. Processing currently works with GIF,\n JPEG, and PNG images.
\n
\n The img parameter specifies the image to display and by default the\n a and b parameters define the location of its upper-left\n corner. The image is displayed at its original size unless the c and\n d parameters specify a different size. The imageMode() function\n can be used to change the way these parameters draw the image.
\n
\n The color of an image may be modified with the tint() function. This\n function will maintain transparency for GIF and PNG images.\n\n ", + "description": "The image() function draws an image to the display window. Images must\n be in the sketch's \"data\" directory to load correctly. Select \"Add file...\"\n from the \"Sketch\" menu to add the image to the data directory, or just drag\n the image file onto the sketch window. Processing currently works with GIF,\n JPEG, and PNG images.
\n
\n The img parameter specifies the image to display and by default the\n a and b parameters define the location of its upper-left\n corner. The image is displayed at its original size unless the c and\n d parameters specify a different size. The imageMode() function\n can be used to change the way these parameters draw the image.
\n
\n The color of an image may be modified with the tint() function. This\n function will maintain transparency for GIF and PNG images.\n\n ", "syntax": ["image(img, a, b)", "image(img, a, b, c, d)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/key.json b/content/references/translations/en/processing/key.json index a5032a805..0022ba8ce 100644 --- a/content/references/translations/en/processing/key.json +++ b/content/references/translations/en/processing/key.json @@ -2,7 +2,7 @@ "brief": "The system variable that always contains the value of the most\n recent key on the keyboard that was used (either pressed or released)", "related": ["keyCode", "keyPressed", "keyPressed_", "keyReleased_"], "name": "key", - "description": "The system variable key always contains the value of the most\n recent key on the keyboard that was used (either pressed or released).\n

\n For non-ASCII keys, use the keyCode variable. The keys included\n in the ASCII specification (BACKSPACE, TAB, ENTER, RETURN, ESC, and\n DELETE) do not require checking to see if they key is coded, and you\n should simply use the key variable instead of keyCode If\n you're making cross-platform projects, note that the ENTER key is\n commonly used on PCs and Unix and the RETURN key is used instead on\n Macintosh. Check for both ENTER and RETURN to make sure your program\n will work for all platforms.\n

\n There are issues with how keyCode behaves across different\n renderers and operating systems. Watch out for unexpected behavior as\n you switch renderers and operating systems.\n\n ", + "description": "The system variable key always contains the value of the most\n recent key on the keyboard that was used (either pressed or released).\n

\n For non-ASCII keys, use the keyCode variable. The keys included\n in the ASCII specification (BACKSPACE, TAB, ENTER, RETURN, ESC, and\n DELETE) do not require checking to see if they key is coded, and you\n should simply use the key variable instead of keyCode If\n you're making cross-platform projects, note that the ENTER key is\n commonly used on PCs and Unix and the RETURN key is used instead on\n Macintosh. Check for both ENTER and RETURN to make sure your program\n will work for all platforms.\n

\n There are issues with how keyCode behaves across different\n renderers and operating systems. Watch out for unexpected behavior as\n you switch renderers and operating systems.\n\n ", "category": "input", "subcategory": "keyboard", "type": "other" diff --git a/content/references/translations/en/processing/keyCode.json b/content/references/translations/en/processing/keyCode.json index 424a6ed7c..1ec340c98 100644 --- a/content/references/translations/en/processing/keyCode.json +++ b/content/references/translations/en/processing/keyCode.json @@ -2,7 +2,7 @@ "brief": "Used to detect special keys such as the UP, DOWN, LEFT, RIGHT arrow keys and ALT, CONTROL, SHIFT", "related": ["key", "keyPressed", "keyPressed_", "keyReleased_"], "name": "keyCode", - "description": "The variable keyCode is used to detect special keys such as the\n UP, DOWN, LEFT, RIGHT arrow keys and ALT, CONTROL, SHIFT.\n

\n When checking for these keys, it can be useful to first check if the key\n is coded. This is done with the conditional if (key == CODED), as\n shown in the example above.\n

\n The keys included in the ASCII specification (BACKSPACE, TAB, ENTER,\n RETURN, ESC, and DELETE) do not require checking to see if the key is\n coded; for those keys, you should simply use the key variable\n directly (and not keyCode). If you're making cross-platform\n projects, note that the ENTER key is commonly used on PCs and Unix,\n while the RETURN key is used on Macs. Make sure your program will work\n on all platforms by checking for both ENTER and RETURN.\n

\n For those familiar with Java, the values for UP and DOWN are simply\n shorter versions of Java's KeyEvent.VK_UP and KeyEvent.VK_DOWN.\n Other keyCode values can be found in the Java\n KeyEvent\n reference.\n

\n There are issues with how keyCode behaves across different renderers\n and operating systems. Watch out for unexpected behavior as you switch\n renderers and operating systems and you are using keys are aren't mentioned\n in this reference entry.\n

\n If you are using P2D or P3D as your renderer, use the\n NEWT KeyEvent constants.\n\n\n ", + "description": "The variable keyCode is used to detect special keys such as the\n UP, DOWN, LEFT, RIGHT arrow keys and ALT, CONTROL, SHIFT.\n

\n When checking for these keys, it can be useful to first check if the key\n is coded. This is done with the conditional if (key == CODED), as\n shown in the example above.\n

\n The keys included in the ASCII specification (BACKSPACE, TAB, ENTER,\n RETURN, ESC, and DELETE) do not require checking to see if the key is\n coded; for those keys, you should simply use the key variable\n directly (and not keyCode). If you're making cross-platform\n projects, note that the ENTER key is commonly used on PCs and Unix,\n while the RETURN key is used on Macs. Make sure your program will work\n on all platforms by checking for both ENTER and RETURN.\n

\n For those familiar with Java, the values for UP and DOWN are simply\n shorter versions of Java's KeyEvent.VK_UP and KeyEvent.VK_DOWN.\n Other keyCode values can be found in the Java\n KeyEvent\n reference.\n

\n There are issues with how keyCode behaves across different\n renderers and operating systems. Watch out for unexpected behavior\n as you switch renderers and operating systems, and also whenever\n you are using keys not mentioned in this reference entry.\n

\n If you are using P2D or P3D as your renderer, use the\n NEWT KeyEvent constants.\n\n ", "category": "input", "subcategory": "keyboard", "type": "other" diff --git a/content/references/translations/en/processing/keyPressed.json b/content/references/translations/en/processing/keyPressed.json index 4cc4aaacb..13a7378b4 100644 --- a/content/references/translations/en/processing/keyPressed.json +++ b/content/references/translations/en/processing/keyPressed.json @@ -2,7 +2,7 @@ "brief": "The boolean system variable that is true if any key\n is pressed and false if no keys are pressed", "related": ["key", "keyCode", "keyPressed_", "keyReleased_"], "name": "keyPressed", - "description": "The boolean system variable keyPressed is true if any key\n is pressed and false if no keys are pressed.\n

\n Note that there is a similarly named function called keyPressed().\n See its reference page for more information.", + "description": "The boolean system variable keyPressed is true\n if any key is pressed and false if no keys are pressed.\n

\n Note that there is a similarly named function called keyPressed().\n See its reference page for more information.", "category": "input", "subcategory": "keyboard", "type": "other" diff --git a/content/references/translations/en/processing/keyPressed_.json b/content/references/translations/en/processing/keyPressed_.json index 6701ce481..27ea8df95 100644 --- a/content/references/translations/en/processing/keyPressed_.json +++ b/content/references/translations/en/processing/keyPressed_.json @@ -2,7 +2,7 @@ "brief": "Called once every time a key is pressed", "related": ["key", "keyCode", "keyPressed", "keyReleased_"], "name": "keyPressed()", - "description": "The keyPressed() function is called once every time a key is\n pressed. The key that was pressed is stored in the key variable.\n
\n
\n For non-ASCII keys, use the keyCode variable. The keys included in\n the ASCII specification (BACKSPACE, TAB, ENTER, RETURN, ESC, and DELETE) do\n not require checking to see if the key is coded; for those keys, you should\n simply use the key variable directly (and not keyCode). If\n you're making cross-platform projects, note that the ENTER key is commonly\n used on PCs and Unix, while the RETURN key is used on Macs. Make sure your\n program will work on all platforms by checking for both ENTER and RETURN.\n
\n
\n Because of how operating systems handle key repeats, holding down a key may\n cause multiple calls to keyPressed(). The rate of repeat is set by\n the operating system, and may be configured differently on each computer.\n
\n
\n Note that there is a similarly named boolean variable called\n keyPressed. See its reference page for more information.
\n
\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.
\n
\n With the release of macOS Sierra, Apple changed how key repeat works, so\n keyPressed may not function as expected. See here\n for details of the problem and how to fix it.\n\n ", + "description": "The keyPressed() function is called once every time a key is\n pressed. The key that was pressed is stored in the key variable.\n
\n
\n For non-ASCII keys, use the keyCode variable. The keys included in\n the ASCII specification (BACKSPACE, TAB, ENTER, RETURN, ESC, and DELETE) do\n not require checking to see if the key is coded; for those keys, you should\n simply use the key variable directly (and not keyCode). If\n you're making cross-platform projects, note that the ENTER key is commonly\n used on PCs and Unix, while the RETURN key is used on Macs. Make sure your\n program will work on all platforms by checking for both ENTER and RETURN.\n
\n
\n Because of how operating systems handle key repeats, holding down a key may\n cause multiple calls to keyPressed(). The rate of repeat is set by\n the operating system, and may be configured differently on each computer.\n
\n
\n Note that there is a similarly named boolean variable called\n keyPressed. See its reference page for more information.
\n
\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.
\n
\n With the release of macOS Sierra, Apple changed how key repeat works, so\n keyPressed may not function as expected. See here\n for details of the problem and how to fix it.\n\n ", "syntax": ["keyPressed()", "keyPressed(event)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/keyReleased_.json b/content/references/translations/en/processing/keyReleased_.json index 7aedb94a9..febb655e1 100644 --- a/content/references/translations/en/processing/keyReleased_.json +++ b/content/references/translations/en/processing/keyReleased_.json @@ -2,7 +2,7 @@ "brief": "Called once every time a key is released", "related": ["key", "keyCode", "keyPressed", "keyPressed_"], "name": "keyReleased()", - "description": "The keyReleased() function is called once every time a key is\n released. The key that was released will be stored in the key\n variable. See key and keyCode for more information.
\n
\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.", + "description": "The keyReleased() function is called once every time a key is\n released. The key that was released will be stored in the key\n variable. See key and keyCode for more information.
\n
\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.", "syntax": ["keyReleased()", "keyReleased(event)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/keyTyped_.json b/content/references/translations/en/processing/keyTyped_.json index 14917e8b1..7b5e1ca44 100644 --- a/content/references/translations/en/processing/keyTyped_.json +++ b/content/references/translations/en/processing/keyTyped_.json @@ -2,7 +2,7 @@ "brief": "Called once every time a key is pressed, but action keys such as\n Ctrl, Shift, and Alt are ignored", "related": ["keyPressed", "key", "keyCode", "keyReleased_"], "name": "keyTyped()", - "description": "The keyTyped() function is called once every time a key is pressed,\n but action keys such as Ctrl, Shift, and Alt are ignored.
\n
\n Because of how operating systems handle key repeats, holding down a key may\n cause multiple calls to keyTyped(). The rate of repeat is set by the\n operating system, and may be configured differently on each computer.\n
\n
\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.", + "description": "The keyTyped() function is called once every time a key is pressed,\n but action keys such as Ctrl, Shift, and Alt are ignored.
\n
\n Because of how operating systems handle key repeats, holding down a key may\n cause multiple calls to keyTyped(). The rate of repeat is set by the\n operating system, and may be configured differently on each computer.\n
\n
\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.", "syntax": ["keyTyped()", "keyTyped(event)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/launch_.json b/content/references/translations/en/processing/launch_.json index 8373e28a3..876b5c222 100644 --- a/content/references/translations/en/processing/launch_.json +++ b/content/references/translations/en/processing/launch_.json @@ -2,7 +2,7 @@ "brief": "Attempts to open an application or file using your platform's\n launcher", "related": [], "name": "launch()", - "description": "Attempts to open an application or file using your platform's launcher. The\n filename parameter is a String specifying the file name and\n location. The location parameter must be a full path name, or the name of\n an executable in the system's PATH. In most cases, using a full path is the\n best option, rather than relying on the system PATH. Be sure to make the\n file executable before attempting to open it (chmod +x).
\n
\n This function (roughly) emulates what happens when you double-click an\n application or document in the macOS Finder, the Windows Explorer, or your\n favorite Linux file manager. If you're trying to run command line functions\n directly, use the exec() function instead (see below).
\n
\n This function behaves differently on each platform. On Windows, the\n parameters are sent to the Windows shell via \"cmd /c\". On Mac OS X, the\n \"open\" command is used (type \"man open\" in Terminal.app for documentation).\n On Linux, it first tries gnome-open, then kde-open, but if neither are\n available, it sends the command to the shell and prays that something\n useful happens.
\n
\n For users familiar with Java, this is not the same as Runtime.exec(),\n because the launcher command is prepended. Instead, the\n exec(String[]) function is a shortcut for\n Runtime.getRuntime.exec(String[]). The exec() function is documented\n in the\n JavaDoc\n in the PApplet class.", + "description": "Attempts to open an application or file using your platform's launcher. The\n filename parameter is a String specifying the file name and\n location. The location parameter must be a full path name, or the name of\n an executable in the system's PATH. In most cases, using a full path is the\n best option, rather than relying on the system PATH. Be sure to make the\n file executable before attempting to open it (chmod +x).
\n
\n This function (roughly) emulates what happens when you double-click an\n application or document in the macOS Finder, the Windows Explorer, or your\n favorite Linux file manager. If you're trying to run command line functions\n directly, use the exec() function instead (see below).
\n
\n This function behaves differently on each platform. On Windows, the\n parameters are sent to the Windows shell via \"cmd /c\". On Mac OS X, the\n \"open\" command is used (type \"man open\" in Terminal.app for documentation).\n On Linux, it first tries gnome-open, then kde-open, but if neither are\n available, it sends the command to the shell and prays that something\n useful happens.
\n
\n For users familiar with Java, this is not the same as Runtime.exec(),\n because the launcher command is prepended. Instead, the\n exec(String[]) function is a shortcut for\n Runtime.getRuntime.exec(String[]). The exec() function is documented\n in the\n JavaDoc\n in the PApplet class.", "syntax": ["launch(args)"], "returns": "Process", "type": "function", @@ -11,7 +11,7 @@ "parameters": [ { "name": "args", - "description": "arguments to the launcher, eg. a filename.", + "description": "arguments to the launcher, e.g. a filename.", "type": ["String[]"] } ] diff --git a/content/references/translations/en/processing/lerpColor_.json b/content/references/translations/en/processing/lerpColor_.json index 69cbd55ba..d9c13ad3d 100644 --- a/content/references/translations/en/processing/lerpColor_.json +++ b/content/references/translations/en/processing/lerpColor_.json @@ -2,7 +2,7 @@ "brief": "Calculates a color or colors between two colors at a specific\n increment", "related": ["PImage_blendColor_", "color_", "lerp_"], "name": "lerpColor()", - "description": "Calculates a color between two colors at a specific increment. The\n amt parameter is the amount to interpolate between the two values\n where 0.0 is equal to the first point, 0.1 is very near the first point,\n 0.5 is halfway in between, etc.
\n An amount below 0 will be treated as 0. Likewise, amounts above 1 will be\n capped at 1. This is different from the behavior of lerp(), but necessary\n because otherwise numbers outside the range will produce strange and\n unexpected colors.", + "description": "Calculates a color between two colors at a specific increment. The\n amt parameter is the amount to interpolate between the two values\n where 0.0 is equal to the first point, 0.1 is very near the first point,\n 0.5 is halfway in between, etc.
\n An amount below 0 will be treated as 0. Likewise, amounts above 1 will be\n capped at 1. This is different from the behavior of lerp(), but necessary\n because otherwise numbers outside the range will produce strange and\n unexpected colors.", "syntax": ["lerpColor(c1, c2, amt)"], "returns": "int", "type": "function", diff --git a/content/references/translations/en/processing/lightFalloff_.json b/content/references/translations/en/processing/lightFalloff_.json index 98c0c266f..102a223c5 100644 --- a/content/references/translations/en/processing/lightFalloff_.json +++ b/content/references/translations/en/processing/lightFalloff_.json @@ -1,5 +1,5 @@ { - "brief": "Sets the falloff rates for point lights, spot lights, and ambient\n lights", + "brief": "Sets the falloff rates for point lights, spotlights, and ambient\n lights", "related": [ "lights_", "ambientLight_", @@ -8,7 +8,7 @@ "lightSpecular_" ], "name": "lightFalloff()", - "description": "Sets the falloff rates for point lights, spot lights, and ambient lights.\n Like fill(), it affects only the elements which are created after it\n in the code. The default value is lightFalloff(1.0, 0.0, 0.0), and the\n parameters are used to calculate the falloff with the following\n equation:
\n
\n d = distance from light position to vertex position
\n falloff = 1 / (CONSTANT + d * LINEAR + (d*d) * QUADRATIC)
\n
\n Thinking about an ambient light with a falloff can be tricky. If you want a\n region of your scene to be ambient lit with one color and another region to\n be ambient lit with another color, you could use an ambient light with\n location and falloff. You can think of it as a point light that doesn't care\n which direction a surface is facing.", + "description": "Sets the falloff rates for point lights, spotlights, and ambient lights.\n Like fill(), it affects only the elements which are created after it\n in the code. The default value is lightFalloff(1.0, 0.0, 0.0), and the\n parameters are used to calculate the falloff with the following\n equation:
\n
\n d = distance from light position to vertex position
\n falloff = 1 / (CONSTANT + d * LINEAR + (d*d) * QUADRATIC)
\n
\n Thinking about an ambient light with a falloff can be tricky. If you want a\n region of your scene to be ambient lit with one color and another region to\n be ambient lit with another color, you could use an ambient light with\n location and falloff. You can think of it as a point light that doesn't care\n which direction a surface is facing.", "syntax": ["lightFalloff(constant, linear, quadratic)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/loadBytes_.json b/content/references/translations/en/processing/loadBytes_.json index 0d8cc89e9..4228bbd56 100644 --- a/content/references/translations/en/processing/loadBytes_.json +++ b/content/references/translations/en/processing/loadBytes_.json @@ -2,7 +2,7 @@ "brief": "Reads the contents of a file or url and places it in a byte\n array", "related": ["loadStrings_", "saveStrings_", "saveBytes_"], "name": "loadBytes()", - "description": "Reads the contents of a file and places it in a byte array. If the name of\n the file is used as the parameter, as in the above example, the file must\n be loaded in the sketch's \"data\" directory/folder.
\n
\n Alternatively, the file maybe be loaded from anywhere on the local computer\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows), or the filename parameter can be a URL for a\n file found on a network.
\n
\n If the file is not available or an error occurs, null will be\n returned and an error message will be printed to the console. The error\n message does not halt the program, however the null value may cause a\n NullPointerException if your code does not check whether the value returned\n is null.
", + "description": "Reads the contents of a file and places it in a byte array. If the name of\n the file is used as the parameter, as in the above example, the file must\n be loaded in the sketch's \"data\" directory/folder.
\n
\n Alternatively, the file maybe be loaded from anywhere on the local computer\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows), or the filename parameter can be a URL for a\n file found on a network.
\n
\n If the file is not available or an error occurs, null will be\n returned and an error message will be printed to the console. The error\n message does not halt the program, however the null value may cause a\n NullPointerException if your code does not check whether the value returned\n is null.
", "syntax": ["loadBytes(filename)"], "returns": "byte[]", "type": "function", diff --git a/content/references/translations/en/processing/loadFont_.json b/content/references/translations/en/processing/loadFont_.json index 6e9017f07..75ae0aaf0 100644 --- a/content/references/translations/en/processing/loadFont_.json +++ b/content/references/translations/en/processing/loadFont_.json @@ -2,7 +2,7 @@ "brief": "Loads a font into a variable of type PFont", "related": ["PFont", "textFont_", "createFont_"], "name": "loadFont()", - "description": "Loads a .vlw formatted font into a PFont object. Create a .vlw font\n by selecting \"Create Font...\" from the Tools menu. This tool creates a\n texture for each alphanumeric character and then adds them as a .vlw file\n to the current sketch's data folder. Because the letters are defined as\n textures (and not vector data) the size at which the fonts are created must\n be considered in relation to the size at which they are drawn. For example,\n load a 32pt font if the sketch displays the font at 32 pixels or smaller.\n Conversely, if a 12pt font is loaded and displayed at 48pts, the letters\n will be distorted because the program will be stretching a small graphic to\n a large size.
\n
\n Like loadImage() and other functions that load data, the\n loadFont() function should not be used inside draw(), because\n it will slow down the sketch considerably, as the font will be re-loaded\n from the disk (or network) on each frame. It's recommended to load files\n inside setup()
\n
\n To load correctly, fonts must be located in the \"data\" folder of the\n current sketch. Alternatively, the file maybe be loaded from anywhere on\n the local computer using an absolute path (something that starts with / on\n Unix and Linux, or a drive letter on Windows), or the filename parameter\n can be a URL for a file found on a network.
\n
\n If the file is not available or an error occurs, null will be\n returned and an error message will be printed to the console. The error\n message does not halt the program, however the null value may cause a\n NullPointerException if your code does not check whether the value returned\n is null.
\n
\n Use createFont() (instead of loadFont()) to enable vector\n data to be used with the default renderer setting. This can be helpful when\n many font sizes are needed, or when using any renderer based on the default\n renderer, such as the PDF library.", + "description": "Loads a .vlw formatted font into a PFont object. Create a .vlw font\n by selecting \"Create Font...\" from the Tools menu. This tool creates a\n texture for each alphanumeric character and then adds them as a .vlw file\n to the current sketch's data folder. Because the letters are defined as\n textures (and not vector data) the size at which the fonts are created must\n be considered in relation to the size at which they are drawn. For example,\n load a 32pt font if the sketch displays the font at 32 pixels or smaller.\n Conversely, if a 12pt font is loaded and displayed at 48pts, the letters\n will be distorted because the program will be stretching a small graphic to\n a large size.
\n
\n Like loadImage() and other functions that load data, the\n loadFont() function should not be used inside draw(), because\n it will slow down the sketch considerably, as the font will be re-loaded\n from the disk (or network) on each frame. It's recommended to load files\n inside setup()
\n
\n To load correctly, fonts must be located in the \"data\" folder of the\n current sketch. Alternatively, the file maybe be loaded from anywhere on\n the local computer using an absolute path (something that starts with / on\n Unix and Linux, or a drive letter on Windows), or the filename parameter\n can be a URL for a file found on a network.
\n
\n If the file is not available or an error occurs, null will be\n returned and an error message will be printed to the console. The error\n message does not halt the program, however the null value may cause a\n NullPointerException if your code does not check whether the value returned\n is null.
\n
\n Use createFont() (instead of loadFont()) to enable vector\n data to be used with the default renderer setting. This can be helpful when\n many font sizes are needed, or when using any renderer based on the default\n renderer, such as the PDF library.", "syntax": ["loadFont(filename)"], "returns": "PFont", "type": "function", diff --git a/content/references/translations/en/processing/loadImage_.json b/content/references/translations/en/processing/loadImage_.json index d3078dc40..89c9ace14 100644 --- a/content/references/translations/en/processing/loadImage_.json +++ b/content/references/translations/en/processing/loadImage_.json @@ -2,7 +2,7 @@ "brief": "Loads an image into a variable of type PImage", "related": ["PImage", "image_", "imageMode_", "background_"], "name": "loadImage()", - "description": "Loads an image into a variable of type PImage. Four types of images\n ( .gif, .jpg, .tga, .png) images may be loaded.\n To load correctly, images must be located in the data directory of the\n current sketch.
\n
\n In most cases, load all images in setup() to preload them at the\n start of the program. Loading images inside draw() will reduce the\n speed of a program. Images cannot be loaded outside setup() unless\n they're inside a function that's called after setup() has already\n run.
\n
\n Alternatively, the file maybe be loaded from anywhere on the local computer\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows), or the filename parameter can be a URL for a\n file found on a network.
\n
\n If the file is not available or an error occurs, null will be\n returned and an error message will be printed to the console. The error\n message does not halt the program, however the null value may cause a\n NullPointerException if your code does not check whether the value returned\n is null.
\n
\n The extension parameter is used to determine the image type in cases\n where the image filename does not end with a proper extension. Specify the\n extension as the second parameter to loadImage(), as shown in the\n third example on this page. Note that CMYK images are not supported.
\n
\n Depending on the type of error, a PImage object may still be\n returned, but the width and height of the image will be set to -1. This\n happens if bad image data is returned or cannot be decoded properly.\n Sometimes this happens with image URLs that produce a 403 error or that\n redirect to a password prompt, because loadImage() will attempt to\n interpret the HTML as image data.", + "description": "Loads an image into a variable of type PImage. Four types of images\n ( .gif, .jpg, .tga, .png) images may be loaded.\n To load correctly, images must be located in the data directory of the\n current sketch.
\n
\n In most cases, load all images in setup() to preload them at the\n start of the program. Loading images inside draw() will reduce the\n speed of a program. Images cannot be loaded outside setup() unless\n they're inside a function that's called after setup() has already\n run.
\n
\n Alternatively, the file maybe be loaded from anywhere on the local computer\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows), or the filename parameter can be a URL for a\n file found on a network.
\n
\n If the file is not available or an error occurs, null will be\n returned and an error message will be printed to the console. The error\n message does not halt the program, however the null value may cause a\n NullPointerException if your code does not check whether the value returned\n is null.
\n
\n The extension parameter is used to determine the image type in cases\n where the image filename does not end with a proper extension. Specify the\n extension as the second parameter to loadImage(), as shown in the\n third example on this page. Note that CMYK images are not supported.
\n
\n Depending on the type of error, a PImage object may still be\n returned, but the width and height of the image will be set to -1. This\n happens if bad image data is returned or cannot be decoded properly.\n Sometimes this happens with image URLs that produce a 403 error or that\n redirect to a password prompt, because loadImage() will attempt to\n interpret the HTML as image data.", "syntax": ["loadImage(filename)", "loadImage(filename, extension)"], "returns": "PImage", "type": "function", diff --git a/content/references/translations/en/processing/loadJSONArray_.json b/content/references/translations/en/processing/loadJSONArray_.json index 8faf30088..b4b3dfb47 100644 --- a/content/references/translations/en/processing/loadJSONArray_.json +++ b/content/references/translations/en/processing/loadJSONArray_.json @@ -7,7 +7,7 @@ "saveJSONArray_" ], "name": "loadJSONArray()", - "description": "Loads an array of JSON objects from the data folder or a URL, and returns a\n JSONArray. Per standard JSON syntax, the array must be enclosed in a\n pair of hard brackets [], and each object within the array must be\n separated by a comma.
\n
\n All files loaded and saved by the Processing API use UTF-8 encoding.", + "description": "Loads an array of JSON objects from the data folder or a URL, and returns a\n JSONArray. Per standard JSON syntax, the array must be enclosed in a\n pair of hard brackets [], and each object within the array must be\n separated by a comma.
\n
\n All files loaded and saved by the Processing API use UTF-8 encoding.", "syntax": ["loadJSONArray(filename)", "loadJSONArray(file)"], "returns": "JSONArray", "type": "function", diff --git a/content/references/translations/en/processing/loadJSONObject_.json b/content/references/translations/en/processing/loadJSONObject_.json index 90f3f1434..eb3c3ef67 100644 --- a/content/references/translations/en/processing/loadJSONObject_.json +++ b/content/references/translations/en/processing/loadJSONObject_.json @@ -8,7 +8,7 @@ "saveJSONArray_" ], "name": "loadJSONObject()", - "description": "Loads a JSON from the data folder or a URL, and returns a\n JSONObject.
\n
\n All files loaded and saved by the Processing API use UTF-8 encoding.", + "description": "Loads a JSON from the data folder or a URL, and returns a\n JSONObject.
\n
\n All files loaded and saved by the Processing API use UTF-8 encoding.", "syntax": ["loadJSONObject(filename)"], "returns": "JSONObject", "type": "function", diff --git a/content/references/translations/en/processing/loadShader_.json b/content/references/translations/en/processing/loadShader_.json index fbf46bfe8..6994c0045 100644 --- a/content/references/translations/en/processing/loadShader_.json +++ b/content/references/translations/en/processing/loadShader_.json @@ -2,7 +2,7 @@ "brief": "Loads a shader into the PShader object", "related": [], "name": "loadShader()", - "description": "Loads a shader into the PShader object. The shader file must be\n loaded in the sketch's \"data\" folder/directory to load correctly.\n Shaders are compatible with the P2D and P3D renderers, but not\n with the default renderer.
\n
\n Alternatively, the file maybe be loaded from anywhere on the local\n computer using an absolute path (something that starts with / on\n Unix and Linux, or a drive letter on Windows), or the filename\n parameter can be a URL for a file found on a network.
\n
\n If the file is not available or an error occurs, null will\n be returned and an error message will be printed to the console.\n The error message does not halt the program, however the null\n value may cause a NullPointerException if your code does not check\n whether the value returned is null.
", + "description": "Loads a shader into the PShader object. The shader file must be\n loaded in the sketch's \"data\" folder/directory to load correctly.\n Shaders are compatible with the P2D and P3D renderers, but not\n with the default renderer.
\n
\n Alternatively, the file maybe be loaded from anywhere on the local\n computer using an absolute path (something that starts with / on\n Unix and Linux, or a drive letter on Windows), or the filename\n parameter can be a URL for a file found on a network.
\n
\n If the file is not available or an error occurs, null will\n be returned and an error message will be printed to the console.\n The error message does not halt the program, however the null\n value may cause a NullPointerException if your code does not check\n whether the value returned is null.
", "syntax": [ "loadShader(fragFilename)", "loadShader(fragFilename, vertFilename)" diff --git a/content/references/translations/en/processing/loadShape_.json b/content/references/translations/en/processing/loadShape_.json index 84a229170..4f884e928 100644 --- a/content/references/translations/en/processing/loadShape_.json +++ b/content/references/translations/en/processing/loadShape_.json @@ -2,7 +2,7 @@ "brief": "Loads geometry into a variable of type PShape", "related": ["PShape", "createShape_"], "name": "loadShape()", - "description": "Loads geometry into a variable of type PShape. SVG and OBJ\n files may be loaded. To load correctly, the file must be located\n in the data directory of the current sketch. In most cases,\n loadShape() should be used inside setup() because\n loading shapes inside draw() will reduce the speed of a sketch.
\n
\n Alternatively, the file maybe be loaded from anywhere on the local\n computer using an absolute path (something that starts with / on\n Unix and Linux, or a drive letter on Windows), or the filename\n parameter can be a URL for a file found on a network.
\n
\n If the file is not available or an error occurs, null will\n be returned and an error message will be printed to the console.\n The error message does not halt the program, however the null value\n may cause a NullPointerException if your code does not check whether\n the value returned is null.
", + "description": "Loads geometry into a variable of type PShape. SVG and OBJ\n files may be loaded. To load correctly, the file must be located\n in the data directory of the current sketch. In most cases,\n loadShape() should be used inside setup() because\n loading shapes inside draw() will reduce the speed of a sketch.
\n
\n Alternatively, the file maybe be loaded from anywhere on the local\n computer using an absolute path (something that starts with / on\n Unix and Linux, or a drive letter on Windows), or the filename\n parameter can be a URL for a file found on a network.
\n
\n If the file is not available or an error occurs, null will\n be returned and an error message will be printed to the console.\n The error message does not halt the program, however the null value\n may cause a NullPointerException if your code does not check whether\n the value returned is null.
", "syntax": ["loadShape(filename)"], "returns": "PShape", "type": "function", diff --git a/content/references/translations/en/processing/loadStrings_.json b/content/references/translations/en/processing/loadStrings_.json index d6d09ac56..3d224788b 100644 --- a/content/references/translations/en/processing/loadStrings_.json +++ b/content/references/translations/en/processing/loadStrings_.json @@ -2,7 +2,7 @@ "brief": "Reads the contents of a file or url and creates a String array of\n its individual lines", "related": ["loadBytes_", "saveStrings_", "saveBytes_"], "name": "loadStrings()", - "description": "Reads the contents of a file and creates a String array of its individual\n lines. If the name of the file is used as the parameter, as in the above\n example, the file must be loaded in the sketch's \"data\" directory/folder.\n
\n
\n Alternatively, the file maybe be loaded from anywhere on the local computer\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows), or the filename parameter can be a URL for a\n file found on a network.
\n
\n If the file is not available or an error occurs, null will be\n returned and an error message will be printed to the console. The error\n message does not halt the program, however the null value may cause a\n NullPointerException if your code does not check whether the value returned\n is null.
\n
\n Starting with Processing release 0134, all files loaded and saved by the\n Processing API use UTF-8 encoding. In previous releases, the default\n encoding for your platform was used, which causes problems when files are\n moved to other platforms.\n\n\n ", + "description": "Reads the contents of a file and creates a String array of its individual\n lines. If the name of the file is used as the parameter, as in the above\n example, the file must be loaded in the sketch's \"data\" directory/folder.\n
\n
\n Alternatively, the file maybe be loaded from anywhere on the local computer\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows), or the filename parameter can be a URL for a\n file found on a network.
\n
\n If the file is not available or an error occurs, null will be\n returned and an error message will be printed to the console. The error\n message does not halt the program, however the null value may cause a\n NullPointerException if your code does not check whether the value returned\n is null.
\n
\n Starting with Processing release 0134, all files loaded and saved by the\n Processing API use UTF-8 encoding. In previous releases, the default\n encoding for your platform was used, which causes problems when files are\n moved to other platforms.\n\n ", "syntax": ["loadStrings(filename)", "loadStrings(reader)"], "returns": "String[]", "type": "function", diff --git a/content/references/translations/en/processing/loadTable_.json b/content/references/translations/en/processing/loadTable_.json index 4ca506f6c..ba244cc41 100644 --- a/content/references/translations/en/processing/loadTable_.json +++ b/content/references/translations/en/processing/loadTable_.json @@ -2,7 +2,7 @@ "brief": "Reads the contents of a file or URL and creates a Table object\n with its values", "related": ["Table", "saveTable_", "loadBytes_", "loadStrings_", "loadXML_"], "name": "loadTable()", - "description": "Reads the contents of a file or URL and creates an Table object with its\n values. If a file is specified, it must be located in the sketch's \"data\"\n folder. The filename parameter can also be a URL to a file found online.\n The filename must either end in an extension or an extension must be\n specified in the options parameter. For example, to use\n tab-separated data, include \"tsv\" in the options parameter if the filename\n or URL does not end in .tsv. Note: If an extension is in both\n places, the extension in the options is used.
\n
\n If the file contains a header row, include \"header\" in the options\n parameter. If the file does not have a header row, then simply omit the\n \"header\" option.
\n
\n Some CSV files contain newline (CR or LF) characters inside cells. This is\n rare, but adding the \"newlines\" option will handle them properly. (This is\n not enabled by default because the parsing code is much slower.)
\n
\n When specifying multiple options, separate them with commas, as in:\n loadTable(\"data.csv\", \"header, tsv\")
\n
\n All files loaded and saved by the Processing API use UTF-8 encoding.", + "description": "Reads the contents of a file or URL and creates a Table object with its\n values. If a file is specified, it must be located in the sketch's \"data\"\n folder. The filename parameter can also be a URL to a file found online.\n The filename must either end in an extension or an extension must be\n specified in the options parameter. For example, to use\n tab-separated data, include \"tsv\" in the options parameter if the filename\n or URL does not end in .tsv. Note: If an extension is in both\n places, the extension in the options is used.
\n
\n If the file contains a header row, include \"header\" in the options\n parameter. If the file does not have a header row, then simply omit the\n \"header\" option.
\n
\n Some CSV files contain newline (CR or LF) characters inside cells. This is\n rare, but adding the \"newlines\" option will handle them properly. (This is\n not enabled by default because the parsing code is much slower.)
\n
\n When specifying multiple options, separate them with commas, as in:\n loadTable(\"data.csv\", \"header, tsv\")
\n
\n All files loaded and saved by the Processing API use UTF-8 encoding.", "syntax": ["loadTable(filename)", "loadTable(filename, options)"], "returns": "Table", "type": "function", diff --git a/content/references/translations/en/processing/loadXML_.json b/content/references/translations/en/processing/loadXML_.json index 96e038823..967b034e1 100644 --- a/content/references/translations/en/processing/loadXML_.json +++ b/content/references/translations/en/processing/loadXML_.json @@ -9,7 +9,7 @@ "loadTable_" ], "name": "loadXML()", - "description": "Reads the contents of a file or URL and creates an XML\n object with its values. If a file is specified, it must\n be located in the sketch's \"data\" folder. The filename\n parameter can also be a URL to a file found online.

\n All files loaded and saved by the Processing API use\n UTF-8 encoding. If you need to load an XML file that's\n not in UTF-8 format, see the \n developer's reference for the XML object.", + "description": "Reads the contents of a file or URL and creates an XML\n object with its values. If a file is specified, it must\n be located in the sketch's \"data\" folder. The filename\n parameter can also be a URL to a file found online.

\n All files loaded and saved by the Processing API use\n UTF-8 encoding. If you need to load an XML file that's\n not in UTF-8 format, see the \n developer's reference for the XML object.", "syntax": ["loadXML(filename)"], "returns": "XML", "type": "function", diff --git a/content/references/translations/en/processing/map_.json b/content/references/translations/en/processing/map_.json index 44e1b12b8..4743aedfd 100644 --- a/content/references/translations/en/processing/map_.json +++ b/content/references/translations/en/processing/map_.json @@ -2,7 +2,7 @@ "brief": "Re-maps a number from one range to another", "related": ["norm_", "lerp_"], "name": "map()", - "description": "Re-maps a number from one range to another.
\n
\n In the first example above, the number 25 is converted from a value in the\n range of 0 to 100 into a value that ranges from the left edge of the window\n (0) to the right edge (width).
\n
\n As shown in the second example, numbers outside of the range are not\n clamped to the minimum and maximum parameters values, because out-of-range\n values are often intentional and useful.", + "description": "Re-maps a number from one range to another.
\n
\n In the first example above, the number 25 is converted from a value in the\n range of 0 to 100 into a value that ranges from the left edge of the window\n (0) to the right edge (width).
\n
\n As shown in the second example, numbers outside the range are\n not clamped to the minimum and maximum parameters values,\n because out-of-range values are often intentional and useful.", "syntax": ["map(value, start1, stop1, start2, stop2)"], "returns": "float", "type": "function", diff --git a/content/references/translations/en/processing/mask_.json b/content/references/translations/en/processing/mask_.json index 4a3708334..190e1ec87 100644 --- a/content/references/translations/en/processing/mask_.json +++ b/content/references/translations/en/processing/mask_.json @@ -2,7 +2,7 @@ "brief": "Masks part of an image with another image as an alpha channel", "related": [], "name": "mask()", - "description": "Masks part of an image from displaying by loading another image and\n using it as an alpha channel. This mask image should only contain\n grayscale data, but only the blue color channel is used. The mask image\n needs to be the same size as the image to which it is applied.
\n
\n In addition to using a mask image, an integer array containing the alpha\n channel data can be specified directly. This method is useful for\n creating dynamically generated alpha masks. This array must be of the\n same length as the target image's pixels array and should contain only\n grayscale data of values between 0-255.\n\n\n ", + "description": "Masks part of an image from displaying by loading another image and\n using it as an alpha channel. This mask image should only contain\n grayscale data, but only the blue color channel is used. The mask image\n needs to be the same size as the image to which it is applied.
\n
\n In addition to using a mask image, an integer array containing the alpha\n channel data can be specified directly. This method is useful for\n creating dynamically generated alpha masks. This array must be of the\n same length as the target image's pixels array and should contain only\n grayscale data of values between 0-255.\n\n ", "syntax": ["mask(img)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/matchAll_.json b/content/references/translations/en/processing/matchAll_.json index 7951fc6d2..07eaaf6c5 100644 --- a/content/references/translations/en/processing/matchAll_.json +++ b/content/references/translations/en/processing/matchAll_.json @@ -2,7 +2,7 @@ "brief": "This function is used to apply a regular expression to a piece of\n text", "related": ["match_", "split_", "splitTokens_", "join_", "trim_"], "name": "matchAll()", - "description": "This function is used to apply a regular expression to a piece of text, and\n return a list of matching groups (elements found inside parentheses) as a\n two-dimensional String array. If there are no matches, a null value will be\n returned. If no groups are specified in the regular expression, but the\n sequence matches, a two dimensional array is still returned, but the second\n dimension is only of length one.
\n
\n To use the function, first check to see if the result is null. If the\n result is null, then the sequence did not match at all. If the sequence did\n match, a 2D array is returned.
\n
\n If there are groups (specified by sets of parentheses) in the regular\n expression, then the contents of each will be returned in the array.\n Assuming a loop with counter variable i, element [i][0] of a regular\n expression match returns the entire matching string, and the match groups\n start at element [i][1] (the first group is [i][1], the second [i][2], and\n so on).
\n
\n The syntax can be found in the reference for Java's Pattern\n class. For regular expression syntax, read the\n Java\n Tutorial on the topic.", + "description": "This function is used to apply a regular expression to a piece of text,\n and return a list of matching groups (elements found inside parentheses)\n as a two-dimensional String array. If there are no matches, a null\n value will be returned. If no groups are specified in the regular\n expression, but the sequence matches, a two-dimensional array is still\n returned, but the second dimension is only of length one.
\n
\n To use the function, first check to see if the result is null. If the\n result is null, then the sequence did not match at all. If the sequence did\n match, a 2D array is returned.
\n
\n If there are groups (specified by sets of parentheses) in the regular\n expression, then the contents of each will be returned in the array.\n Assuming a loop with counter variable i, element [i][0] of a regular\n expression match returns the entire matching string, and the match groups\n start at element [i][1] (the first group is [i][1], the second [i][2], and\n so on).
\n
\n The syntax can be found in the reference for Java's Pattern\n class. For regular expression syntax, read the\n Java\n Tutorial on the topic.", "syntax": ["matchAll(str, regexp)"], "returns": "String[][]", "type": "function", diff --git a/content/references/translations/en/processing/match_.json b/content/references/translations/en/processing/match_.json index a969a8ad6..ac2ff0aa3 100644 --- a/content/references/translations/en/processing/match_.json +++ b/content/references/translations/en/processing/match_.json @@ -2,7 +2,7 @@ "brief": "The function is used to apply a regular expression to a\n piece of text, and return matching groups (elements found inside\n parentheses) as a String array", "related": ["matchAll_", "split_", "splitTokens_", "join_", "trim_"], "name": "match()", - "description": "This function is used to apply a regular expression to a piece of text, and\n return matching groups (elements found inside parentheses) as a String\n array. If there are no matches, a null value will be returned. If no groups\n are specified in the regular expression, but the sequence matches, an array\n of length 1 (with the matched text as the first element of the array) will\n be returned.
\n
\n To use the function, first check to see if the result is null. If the\n result is null, then the sequence did not match at all. If the sequence did\n match, an array is returned.
\n
\n If there are groups (specified by sets of parentheses) in the regular\n expression, then the contents of each will be returned in the array.\n Element [0] of a regular expression match returns the entire matching\n string, and the match groups start at element [1] (the first group is [1],\n the second [2], and so on).
\n
\n The syntax can be found in the reference for Java's Pattern\n class. For regular expression syntax, read the\n Java\n Tutorial on the topic.", + "description": "This function is used to apply a regular expression to a piece of text, and\n return matching groups (elements found inside parentheses) as a String\n array. If there are no matches, a null value will be returned. If no groups\n are specified in the regular expression, but the sequence matches, an array\n of length 1 (with the matched text as the first element of the array) will\n be returned.
\n
\n To use the function, first check to see if the result is null. If the\n result is null, then the sequence did not match at all. If the sequence did\n match, an array is returned.
\n
\n If there are groups (specified by sets of parentheses) in the regular\n expression, then the contents of each will be returned in the array.\n Element [0] of a regular expression match returns the entire matching\n string, and the match groups start at element [1] (the first group is [1],\n the second [2], and so on).
\n
\n The syntax can be found in the reference for Java's Pattern\n class. For regular expression syntax, read the\n Java\n Tutorial on the topic.", "syntax": ["match(str, regexp)"], "returns": "String[]", "type": "function", diff --git a/content/references/translations/en/processing/millis_.json b/content/references/translations/en/processing/millis_.json index f9ae011ba..cbc8ab356 100644 --- a/content/references/translations/en/processing/millis_.json +++ b/content/references/translations/en/processing/millis_.json @@ -1,8 +1,8 @@ { - "brief": "Returns the number of milliseconds (thousandths of a second) since\n starting an applet", + "brief": "Returns the number of milliseconds (thousandths of a second) since\n the sketch started.", "related": ["second_", "minute_", "hour_", "day_", "month_", "year_"], "name": "millis()", - "description": "Returns the number of milliseconds (thousandths of a second) since\n starting an applet. This information is often used for timing animation\n sequences.\n\n\n ", + "description": "Returns the number of milliseconds (thousandths of a second) since\n starting the sketch. This information is often used for timing animation\n sequences.\n\n ", "syntax": ["millis()"], "returns": "int", "type": "function", diff --git a/content/references/translations/en/processing/minute_.json b/content/references/translations/en/processing/minute_.json index 4ba9cc6c7..96eb0fd96 100644 --- a/content/references/translations/en/processing/minute_.json +++ b/content/references/translations/en/processing/minute_.json @@ -1,8 +1,8 @@ { - "brief": "Returns the current minute as a value from 0 - 59", + "brief": "Returns the current minute as a value from 0 to 59", "related": ["millis_", "second_", "hour_", "day_", "month_", "year_"], "name": "minute()", - "description": "Processing communicates with the clock on your computer. The\n minute() function returns the current minute as a value from 0 - 59.", + "description": "Processing communicates with the clock on your computer. The\n minute() function returns the current minute as a value from 0 to 59.", "syntax": ["minute()"], "returns": "int", "type": "function", diff --git a/content/references/translations/en/processing/modelY_.json b/content/references/translations/en/processing/modelY_.json index 813a8fe2a..81e838cbe 100644 --- a/content/references/translations/en/processing/modelY_.json +++ b/content/references/translations/en/processing/modelY_.json @@ -2,7 +2,7 @@ "brief": "Returns the three-dimensional X, Y, Z position in model space", "related": ["modelX_", "modelZ_"], "name": "modelY()", - "description": "Returns the three-dimensional X, Y, Z position in model space. This\n returns the Y value for a given coordinate based on the current set of\n transformations (scale, rotate, translate, etc.) The Y value can be used\n to place an object in space relative to the location of the original\n point once the transformations are no longer in use.
\n
\n In the example, the modelX(), modelY(), and\n modelZ() functions record the location of a box in space after\n being placed using a series of translate and rotate commands. After\n popMatrix() is called, those transformations no longer apply, but the\n (x, y, z) coordinate returned by the model functions is used to place\n another box in the same location.", + "description": "Returns the three-dimensional X, Y, Z position in model space. This\n returns the Y value for a given coordinate based on the current set of\n transformations (scale, rotate, translate, etc.) The Y value can be used\n to place an object in space relative to the location of the original\n point once the transformations are no longer in use.
\n
\n In the example, the modelX(), modelY(), and\n modelZ() functions record the location of a box in space after\n being placed using a series of translate and rotate commands. After\n popMatrix() is called, those transformations no longer apply, but the\n (x, y, z) coordinate returned by the model functions is used to place\n another box in the same location.", "syntax": ["modelY(x, y, z)"], "returns": "float", "type": "function", diff --git a/content/references/translations/en/processing/modelZ_.json b/content/references/translations/en/processing/modelZ_.json index 3289df04b..949aaf5f9 100644 --- a/content/references/translations/en/processing/modelZ_.json +++ b/content/references/translations/en/processing/modelZ_.json @@ -2,7 +2,7 @@ "brief": "Returns the three-dimensional X, Y, Z position in model space", "related": ["modelX_", "modelY_"], "name": "modelZ()", - "description": "Returns the three-dimensional X, Y, Z position in model space. This\n returns the Z value for a given coordinate based on the current set of\n transformations (scale, rotate, translate, etc.) The Z value can be used\n to place an object in space relative to the location of the original\n point once the transformations are no longer in use.
\n
\n In the example, the modelX(), modelY(), and\n modelZ() functions record the location of a box in space after\n being placed using a series of translate and rotate commands. After\n popMatrix() is called, those transformations no longer apply, but the\n (x, y, z) coordinate returned by the model functions is used to place\n another box in the same location.", + "description": "Returns the three-dimensional X, Y, Z position in model space. This\n returns the Z value for a given coordinate based on the current set of\n transformations (scale, rotate, translate, etc.) The Z value can be used\n to place an object in space relative to the location of the original\n point once the transformations are no longer in use.
\n
\n In the example, the modelX(), modelY(), and\n modelZ() functions record the location of a box in space after\n being placed using a series of translate and rotate commands. After\n popMatrix() is called, those transformations no longer apply, but the\n (x, y, z) coordinate returned by the model functions is used to place\n another box in the same location.", "syntax": ["modelZ(x, y, z)"], "returns": "float", "type": "function", diff --git a/content/references/translations/en/processing/month_.json b/content/references/translations/en/processing/month_.json index 8c3ab3fee..dad6e8aa5 100644 --- a/content/references/translations/en/processing/month_.json +++ b/content/references/translations/en/processing/month_.json @@ -1,8 +1,8 @@ { - "brief": "Returns the current month as a value from 1 - 12", + "brief": "Returns the current month as a value from 1 to 12", "related": ["millis_", "second_", "minute_", "hour_", "day_", "year_"], "name": "month()", - "description": "Processing communicates with the clock on your computer. The\n month() function returns the current month as a value from 1 - 12.", + "description": "Processing communicates with the clock on your computer. The\n month() function returns the current month as a value from 1 to 12.", "syntax": ["month()"], "returns": "int", "type": "function", diff --git a/content/references/translations/en/processing/mouseButton.json b/content/references/translations/en/processing/mouseButton.json index d9dfdbff5..130c56de5 100644 --- a/content/references/translations/en/processing/mouseButton.json +++ b/content/references/translations/en/processing/mouseButton.json @@ -14,7 +14,7 @@ "mouseWheel_" ], "name": "mouseButton", - "description": "When a mouse button is pressed, the value of the system variable\n mouseButton is set to either LEFT, RIGHT, or\n CENTER, depending on which button is pressed. (If no button is\n pressed, mouseButton may be reset to 0. For that reason,\n it's best to use mousePressed first to test if any button is being\n pressed, and only then test the value of mouseButton, as shown in\n the examples above.)\n\n\n ", + "description": "When a mouse button is pressed, the value of the system variable\n mouseButton is set to either LEFT, RIGHT, or\n CENTER, depending on which button is pressed. (If no button is\n pressed, mouseButton may be reset to 0. For that reason,\n it's best to use mousePressed first to test if any button is being\n pressed, and only then test the value of mouseButton, as shown in\n the examples above.)\n\n ", "category": "input", "subcategory": "mouse", "type": "other" diff --git a/content/references/translations/en/processing/mouseClicked_.json b/content/references/translations/en/processing/mouseClicked_.json index d500ee82b..0a387cbad 100644 --- a/content/references/translations/en/processing/mouseClicked_.json +++ b/content/references/translations/en/processing/mouseClicked_.json @@ -14,7 +14,7 @@ "mouseWheel_" ], "name": "mouseClicked()", - "description": "The mouseClicked() function is called after a mouse button\n has been pressed and then released.
\n
\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.\n\n ", + "description": "The mouseClicked() function is called after a mouse button\n has been pressed and then released.
\n
\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.\n\n ", "syntax": ["mouseClicked()", "mouseClicked(event)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/mouseDragged_.json b/content/references/translations/en/processing/mouseDragged_.json index 696e5a7dc..3877c54be 100644 --- a/content/references/translations/en/processing/mouseDragged_.json +++ b/content/references/translations/en/processing/mouseDragged_.json @@ -14,7 +14,7 @@ "mouseWheel_" ], "name": "mouseDragged()", - "description": "The mouseDragged() function is called once every time the mouse\n moves while a mouse button is pressed. (If a button is not being\n pressed, mouseMoved() is called instead.)
\n
\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.", + "description": "The mouseDragged() function is called once every time the mouse\n moves while a mouse button is pressed. (If a button is not being\n pressed, mouseMoved() is called instead.)
\n
\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.", "syntax": ["mouseDragged()", "mouseDragged(event)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/mouseMoved_.json b/content/references/translations/en/processing/mouseMoved_.json index 5539af11e..17da5d691 100644 --- a/content/references/translations/en/processing/mouseMoved_.json +++ b/content/references/translations/en/processing/mouseMoved_.json @@ -14,7 +14,7 @@ "mouseWheel_" ], "name": "mouseMoved()", - "description": "The mouseMoved() function is called every time the mouse moves and a\n mouse button is not pressed. (If a button is being pressed,\n mouseDragged() is called instead.)
\n
\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.", + "description": "The mouseMoved() function is called every time the mouse moves and a\n mouse button is not pressed. (If a button is being pressed,\n mouseDragged() is called instead.)
\n
\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.", "syntax": ["mouseMoved()", "mouseMoved(event)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/mousePressed.json b/content/references/translations/en/processing/mousePressed.json index dc13a5500..dcd8c18cf 100644 --- a/content/references/translations/en/processing/mousePressed.json +++ b/content/references/translations/en/processing/mousePressed.json @@ -14,7 +14,7 @@ "mouseWheel_" ], "name": "mousePressed", - "description": "The mousePressed() function is called once after every time a\n mouse button is pressed. The mouseButton variable (see the\n related reference entry) can be used to determine which button has\n been pressed.\n

\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops\n listening for events.", + "description": "The mousePressed variable stores whether a mouse button has been pressed.\n The mouseButton variable (see the related reference entry) can be used to\n determine which button has been pressed.\n

\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops\n listening for events.", "category": "input", "subcategory": "mouse", "type": "other" diff --git a/content/references/translations/en/processing/mousePressed_.json b/content/references/translations/en/processing/mousePressed_.json index ebe1f505e..64cdfddb3 100644 --- a/content/references/translations/en/processing/mousePressed_.json +++ b/content/references/translations/en/processing/mousePressed_.json @@ -14,7 +14,7 @@ "mouseWheel_" ], "name": "mousePressed()", - "description": "The mousePressed() function is called once after every time a mouse\n button is pressed. The mouseButton variable (see the related\n reference entry) can be used to determine which button has been pressed.\n
\n
\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.\n\n ", + "description": "The mousePressed() function is called once after every time a mouse\n button is pressed. The mouseButton variable (see the related\n reference entry) can be used to determine which button has been pressed.\n
\n
\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.\n\n ", "syntax": ["mousePressed()", "mousePressed(event)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/mouseReleased_.json b/content/references/translations/en/processing/mouseReleased_.json index 249a57135..b0af99e17 100644 --- a/content/references/translations/en/processing/mouseReleased_.json +++ b/content/references/translations/en/processing/mouseReleased_.json @@ -14,7 +14,7 @@ "mouseWheel_" ], "name": "mouseReleased()", - "description": "The mouseReleased() function is called every time a mouse button is\n released.
\n
\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.", + "description": "The mouseReleased() function is called every time a mouse button is\n released.
\n
\n Mouse and keyboard events only work when a program has draw().\n Without draw(), the code is only run once and then stops listening\n for events.", "syntax": ["mouseReleased()", "mouseReleased(event)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/mouseWheel_.json b/content/references/translations/en/processing/mouseWheel_.json index ed3b72f81..4c6ca732b 100644 --- a/content/references/translations/en/processing/mouseWheel_.json +++ b/content/references/translations/en/processing/mouseWheel_.json @@ -14,7 +14,7 @@ "mouseButton" ], "name": "mouseWheel()", - "description": "The code within the mouseWheel() event function\n is run when the mouse wheel is moved. (Some mice don't\n have wheels and this function is only applicable with\n mice that have a wheel.) The getCount() function\n used within mouseWheel() returns positive values\n when the mouse wheel is rotated down (toward the user),\n and negative values for the other direction (up or away\n from the user). On OS X with \"natural\" scrolling enabled,\n the values are opposite.\n

\n Mouse and keyboard events only work when a program has\n draw(). Without draw(), the code is only\n run once and then stops listening for events.", + "description": "The code within the mouseWheel() event function\n is run when the mouse wheel is moved. (Some mice don't\n have wheels and this function is only applicable with\n mice that have a wheel.) The getCount() function\n used within mouseWheel() returns positive values\n when the mouse wheel is rotated down (toward the user),\n and negative values for the other direction (up or away\n from the user). On OS X with \"natural\" scrolling enabled,\n the values are opposite.\n

\n Mouse and keyboard events only work when a program has\n draw(). Without draw(), the code is only\n run once and then stops listening for events.", "syntax": ["mouseWheel(event)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/mouseX.json b/content/references/translations/en/processing/mouseX.json index e52bb7e36..e48bd5436 100644 --- a/content/references/translations/en/processing/mouseX.json +++ b/content/references/translations/en/processing/mouseX.json @@ -14,7 +14,7 @@ "mouseWheel_" ], "name": "mouseX", - "description": "The system variable mouseX always contains the current horizontal\n coordinate of the mouse.\n

\n Note that Processing can only track the mouse position when the pointer\n is over the current window. The default value of mouseX is 0,\n so 0 will be returned until the mouse moves in front of the sketch\n window. (This typically happens when a sketch is first run.) Once the\n mouse moves away from the window, mouseX will continue to report\n its most recent position.", + "description": "The system variable mouseX always contains the current horizontal\n coordinate of the mouse.\n

\n Note that Processing can only track the mouse position when the pointer\n is over the current window. The default value of mouseX is 0,\n so 0 will be returned until the mouse moves in front of the sketch\n window. (This typically happens when a sketch is first run.) Once the\n mouse moves away from the window, mouseX will continue to report\n its most recent position.", "category": "input", "subcategory": "mouse", "type": "other" diff --git a/content/references/translations/en/processing/mouseY.json b/content/references/translations/en/processing/mouseY.json index 56eded55d..6cc1b9f5c 100644 --- a/content/references/translations/en/processing/mouseY.json +++ b/content/references/translations/en/processing/mouseY.json @@ -14,7 +14,7 @@ "mouseWheel_" ], "name": "mouseY", - "description": "The system variable mouseY always contains the current vertical\n coordinate of the mouse.\n

\n Note that Processing can only track the mouse position when the pointer\n is over the current window. The default value of mouseY is 0,\n so 0 will be returned until the mouse moves in front of the sketch\n window. (This typically happens when a sketch is first run.) Once the\n mouse moves away from the window, mouseY will continue to report\n its most recent position.", + "description": "The system variable mouseY always contains the current\n vertical coordinate of the mouse.\n

\n Note that Processing can only track the mouse position when the pointer\n is over the current window. The default value of mouseY is 0,\n so 0 will be returned until the mouse moves in front of the sketch\n window. (This typically happens when a sketch is first run.) Once the\n mouse moves away from the window, mouseY will continue to report\n its most recent position.", "category": "input", "subcategory": "mouse", "type": "other" diff --git a/content/references/translations/en/processing/nf_.json b/content/references/translations/en/processing/nf_.json index c0bb832c3..92ccbbba6 100644 --- a/content/references/translations/en/processing/nf_.json +++ b/content/references/translations/en/processing/nf_.json @@ -2,7 +2,7 @@ "brief": "Utility function for formatting numbers into strings", "related": ["nfs_", "nfp_", "nfc_"], "name": "nf()", - "description": "Utility function for formatting numbers into strings. There are two\n versions: one for formatting floats, and one for formatting ints. The\n values for the digits and right parameters should always be\n positive integers. The left parameter should be positive or 0. If it\n is zero, only the right side is formatted.
\n
\n As shown in the above example, nf() is used to add zeros to the left\n and/or right of a number. This is typically for aligning a list of numbers.\n To remove digits from a floating-point number, use the\n int(), ceil(), floor(), or round() functions.", + "description": "Utility function for formatting numbers into strings. There are two\n versions: one for formatting floats, and one for formatting ints. The\n values for the digits and right parameters should always be\n positive integers. The left parameter should be positive or 0. If it\n is zero, only the right side is formatted.
\n
\n As shown in the above example, nf() is used to add zeros to the left\n and/or right of a number. This is typically for aligning a list of numbers.\n To remove digits from a floating-point number, use the\n int(), ceil(), floor(), or round() functions.", "syntax": [ "nf(num)", "nf(nums)", diff --git a/content/references/translations/en/processing/nfc_.json b/content/references/translations/en/processing/nfc_.json index f174284ca..5eaffc732 100644 --- a/content/references/translations/en/processing/nfc_.json +++ b/content/references/translations/en/processing/nfc_.json @@ -2,7 +2,7 @@ "brief": "Utility function for formatting numbers into strings and placing\n appropriate commas to mark units of 1000", "related": ["nf_", "nfp_", "nfs_"], "name": "nfc()", - "description": "Utility function for formatting numbers into strings and placing\n appropriate commas to mark units of 1000. There are four versions: one for\n formatting ints, one for formatting an array of ints, one for formatting\n floats, and one for formatting an array of floats.
\n
\n The value for the right parameter should always be a positive\n integer.
\n
\n For a non-US locale, this will insert periods instead of commas,\n or whatever is appropriate for that region.", + "description": "Utility function for formatting numbers into strings and placing\n appropriate commas to mark units of 1000. There are four versions: one for\n formatting ints, one for formatting an array of ints, one for formatting\n floats, and one for formatting an array of floats.
\n
\n The value for the right parameter should always be a positive\n integer.
\n
\n For a non-US locale, this will insert periods instead of commas,\n or whatever is appropriate for that region.", "syntax": ["nfc(nums)", "nfc(num)", "nfc(nums, right)", "nfc(num, right)"], "returns": "String[]", "type": "function", diff --git a/content/references/translations/en/processing/nfs_.json b/content/references/translations/en/processing/nfs_.json index ac35b8b04..59b5d3b76 100644 --- a/content/references/translations/en/processing/nfs_.json +++ b/content/references/translations/en/processing/nfs_.json @@ -2,7 +2,7 @@ "brief": "Utility function for formatting numbers into strings", "related": ["nf_", "nfp_", "nfc_"], "name": "nfs()", - "description": "Utility function for formatting numbers into strings. Similar to\n nf() but leaves a blank space in front of positive numbers so\n they align with negative numbers in spite of the minus symbol. There are\n two versions, one for formatting floats and one for formatting ints. The\n values for the digits, left, and right parameters\n should always be positive integers.", + "description": "Utility function for formatting numbers into strings. Similar to\n nf() but leaves a blank space in front of positive numbers, so\n they align with negative numbers in spite of the minus symbol. There are\n two versions, one for formatting floats and one for formatting ints. The\n values for the digits, left, and right parameters\n should always be positive integers.", "syntax": [ "nfs(num, digits)", "nfs(nums, digits)", diff --git a/content/references/translations/en/processing/noSmooth_.json b/content/references/translations/en/processing/noSmooth_.json index 6952ec2f4..b7c7ba37a 100644 --- a/content/references/translations/en/processing/noSmooth_.json +++ b/content/references/translations/en/processing/noSmooth_.json @@ -2,7 +2,7 @@ "brief": "Draws all geometry and fonts with jagged (aliased)\n edges and images with hard edges between the pixels\n when enlarged rather than interpolating pixels", "related": [], "name": "noSmooth()", - "description": "Draws all geometry and fonts with jagged (aliased)\n edges and images with hard edges between the pixels\n when enlarged rather than interpolating pixels. Note\n that smooth() is active by default, so it is necessary\n to call noSmooth() to disable smoothing of geometry,\n fonts, and images. Since the release of Processing 3.0,\n the noSmooth() function can only be run once for each\n sketch, either at the top of a sketch without a setup(),\n or after the size() function when used in a sketch with\n setup(). See the examples above for both scenarios.", + "description": "Draws all geometry and fonts with jagged (aliased)\n edges and images with hard edges between the pixels\n when enlarged rather than interpolating pixels. Note\n that smooth() is active by default, so it is necessary\n to call noSmooth() to disable smoothing of geometry,\n fonts, and images. Since the release of Processing 3.0,\n the noSmooth() function can only be run once for each\n sketch, either at the top of a sketch without a setup(),\n or after the size() function when used in a sketch with\n setup(). See the examples above for both scenarios.", "syntax": ["noSmooth()"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/noiseDetail_.json b/content/references/translations/en/processing/noiseDetail_.json index 6c0c0f149..6af5cc4da 100644 --- a/content/references/translations/en/processing/noiseDetail_.json +++ b/content/references/translations/en/processing/noiseDetail_.json @@ -2,7 +2,7 @@ "brief": "Adjusts the character and level of detail produced by the Perlin\n noise function", "related": ["noise_", "noiseDetail_"], "name": "noiseDetail()", - "description": "Adjusts the character and level of detail produced by the Perlin noise\n function. Similar to harmonics in physics, noise is computed over several\n octaves. Lower octaves contribute more to the output signal and as such\n define the overall intensity of the noise, whereas higher octaves create\n finer-grained details in the noise sequence.
\n
\n By default, noise is computed over 4 octaves with each octave contributing\n exactly half than its predecessor, starting at 50% strength for the first\n octave. This falloff amount can be changed by adding an additional function\n parameter. For example, a falloff factor of 0.75 means each octave will now\n have 75% impact (25% less) of the previous lower octave. While any number\n between 0.0 and 1.0 is valid, note that values greater than 0.5 may result\n in noise() returning values greater than 1.0.
\n
\n By changing these parameters, the signal created by the noise()\n function can be adapted to fit very specific needs and characteristics.", + "description": "Adjusts the character and level of detail produced by the Perlin noise\n function. Similar to harmonics in physics, noise is computed over several\n octaves. Lower octaves contribute more to the output signal and as such\n define the overall intensity of the noise, whereas higher octaves create\n finer-grained details in the noise sequence.
\n
\n By default, noise is computed over 4 octaves with each octave contributing\n exactly half than its predecessor, starting at 50% strength for the first\n octave. This falloff amount can be changed by adding a function parameter.\n For example, a falloff factor of 0.75 means each octave will now\n have 75% impact (25% less) of the previous lower octave. While any number\n between 0.0 and 1.0 is valid, note that values greater than 0.5 may result\n in noise() returning values greater than 1.0.
\n
\n By changing these parameters, the signal created by the noise()\n function can be adapted to fit very specific needs and characteristics.", "syntax": ["noiseDetail(lod)", "noiseDetail(lod, falloff)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/noise_.json b/content/references/translations/en/processing/noise_.json index 078629fdf..4b178c7f7 100644 --- a/content/references/translations/en/processing/noise_.json +++ b/content/references/translations/en/processing/noise_.json @@ -2,7 +2,7 @@ "brief": "Returns the Perlin noise value at specified coordinates", "related": ["noiseSeed_", "noiseDetail_", "random_"], "name": "noise()", - "description": "Returns the Perlin noise value at specified coordinates. Perlin noise is a\n random sequence generator producing a more natural, harmonic succession of\n numbers than that of the standard random() function. It was\n developed by Ken Perlin in the 1980s and has been used in graphical\n applications to generate procedural textures, shapes, terrains, and other\n seemingly organic forms.
\n
\n In contrast to the random() function, Perlin noise is defined in an\n infinite n-dimensional space, in which each pair of coordinates corresponds\n to a fixed semi-random value (fixed only for the lifespan of the program).\n The resulting value will always be between 0.0 and 1.0. Processing can\n compute 1D, 2D and 3D noise, depending on the number of coordinates given.\n The noise value can be animated by moving through the noise space, as\n demonstrated in the first example above. The 2nd and 3rd dimensions can\n also be interpreted as time.
\n
\n The actual noise structure is similar to that of an audio signal, in\n respect to the function's use of frequencies. Similar to the concept of\n harmonics in physics, Perlin noise is computed over several octaves which\n are added together for the final result.
\n
\n Another way to adjust the character of the resulting sequence is the scale\n of the input coordinates. As the function works within an infinite space,\n the value of the coordinates doesn't matter as such; only the\n distance between successive coordinates is important (such as when\n using noise() within a loop). As a general rule, the smaller the\n difference between coordinates, the smoother the resulting noise sequence.\n Steps of 0.005-0.03 work best for most applications, but this will differ\n depending on use.
\n
\n There have been debates over the accuracy of the implementation of noise in\n Processing. For clarification, it's an implementation of \"classic Perlin\n noise\" from 1983, and not the newer \"simplex noise\" method from 2001.", + "description": "Returns the Perlin noise value at specified coordinates. Perlin noise is a\n random sequence generator producing a more natural, harmonic succession of\n numbers than that of the standard random() function. It was\n developed by Ken Perlin in the 1980s and has been used in graphical\n applications to generate procedural textures, shapes, terrains, and other\n seemingly organic forms.
\n
\n In contrast to the random() function, Perlin noise is defined in an\n infinite n-dimensional space, in which each pair of coordinates corresponds\n to a fixed semi-random value (fixed only for the lifespan of the program).\n The resulting value will always be between 0.0 and 1.0. Processing can\n compute 1D, 2D and 3D noise, depending on the number of coordinates given.\n The noise value can be animated by moving through the noise space, as\n demonstrated in the first example above. The 2nd and 3rd dimensions can\n also be interpreted as time.
\n
\n The actual noise structure is similar to that of an audio signal, in\n respect to the function's use of frequencies. Similar to the concept of\n harmonics in physics, Perlin noise is computed over several octaves which\n are added together for the final result.
\n
\n Another way to adjust the character of the resulting sequence is the scale\n of the input coordinates. As the function works within an infinite space,\n the value of the coordinates doesn't matter as such; only the\n distance between successive coordinates is important (such as when\n using noise() within a loop). As a general rule, the smaller the\n difference between coordinates, the smoother the resulting noise sequence.\n Steps of 0.005-0.03 work best for most applications, but this will differ\n depending on use.
\n
\n There have been debates over the accuracy of the implementation of noise in\n Processing. For clarification, it's an implementation of \"classic Perlin\n noise\" from 1983, and not the newer \"simplex noise\" method from 2001.", "syntax": ["noise(x)", "noise(x, y)", "noise(x, y, z)"], "returns": "float", "type": "function", diff --git a/content/references/translations/en/processing/norm_.json b/content/references/translations/en/processing/norm_.json index 4a1f53681..f1846dcdc 100644 --- a/content/references/translations/en/processing/norm_.json +++ b/content/references/translations/en/processing/norm_.json @@ -2,7 +2,7 @@ "brief": "Normalizes a number from another range into a value between 0 and\n 1", "related": ["map_", "lerp_"], "name": "norm()", - "description": "Normalizes a number from another range into a value between 0 and 1.\n Identical to map(value, low, high, 0, 1).
\n
\n Numbers outside of the range are not clamped to 0 and 1, because\n out-of-range values are often intentional and useful. (See the second\n example above.)", + "description": "Normalizes a number from another range into a value between 0 and 1.\n Identical to map(value, low, high, 0, 1).
\n
\n Numbers outside the range are not clamped to 0 and 1, because\n out-of-range values are often intentional and useful. (See the second\n example above.)", "syntax": ["norm(value, start, stop)"], "returns": "float", "type": "function", diff --git a/content/references/translations/en/processing/normal_.json b/content/references/translations/en/processing/normal_.json index acfafbde6..82046a67b 100644 --- a/content/references/translations/en/processing/normal_.json +++ b/content/references/translations/en/processing/normal_.json @@ -2,7 +2,7 @@ "brief": "Sets the current normal vector", "related": ["beginShape_", "endShape_", "lights_"], "name": "normal()", - "description": "Sets the current normal vector. Used for drawing three dimensional shapes and\n surfaces, normal() specifies a vector perpendicular to a shape's\n surface which, in turn, determines how lighting affects it. Processing\n attempts to automatically assign normals to shapes, but since that's\n imperfect, this is a better option when you want more control. This function\n is identical to glNormal3f() in OpenGL.", + "description": "Sets the current normal vector. Used for drawing three-dimensional\n shapes and surfaces, normal() specifies a vector perpendicular\n to a shape's surface which, in turn, determines how lighting affects it.\n Processing attempts to automatically assign normals to shapes, but since\n that's imperfect, this is a better option when you want more control.\n This function is identical to glNormal3f() in OpenGL.", "syntax": ["normal(nx, ny, nz)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/parseJSONArray_.json b/content/references/translations/en/processing/parseJSONArray_.json index d4b41ab89..d72f01d5e 100644 --- a/content/references/translations/en/processing/parseJSONArray_.json +++ b/content/references/translations/en/processing/parseJSONArray_.json @@ -2,7 +2,7 @@ "brief": "Takes a String, parses its contents, and returns a JSONArray", "related": ["JSONObject", "loadJSONObject_", "saveJSONObject_"], "name": "parseJSONArray()", - "description": "Takes a String, parses its contents, and returns a JSONArray.\n If the String does not contain JSONArray data or cannot be\n parsed, a null value is returned.
\n
\n parseJSONArray() is most useful when pulling data dynamically, such as\n from third-party APIs. Normally, API results would be saved to a\n String, and then can be converted to a structured JSONArray\n using parseJSONArray(). Be sure to check if null is returned\n before performing operations on the new JSONArray in case the\n String content could not be parsed.
\n
\n If your data already exists as a JSON file in the data folder, it is\n simpler to use loadJSONArray().", + "description": "Takes a String, parses its contents, and returns a JSONArray.\n If the String does not contain JSONArray data or cannot be\n parsed, a null value is returned.
\n
\n parseJSONArray() is most useful when pulling data dynamically, such as\n from third-party APIs. Normally, API results would be saved to a\n String, and then can be converted to a structured JSONArray\n using parseJSONArray(). Be sure to check if null is returned\n before performing operations on the new JSONArray in case the\n String content could not be parsed.
\n
\n If your data already exists as a JSON file in the data folder, it is\n simpler to use loadJSONArray().", "syntax": ["parseJSONArray(input)"], "returns": "JSONArray", "type": "function", diff --git a/content/references/translations/en/processing/parseJSONObject_.json b/content/references/translations/en/processing/parseJSONObject_.json index 29ff7f459..7810500dd 100644 --- a/content/references/translations/en/processing/parseJSONObject_.json +++ b/content/references/translations/en/processing/parseJSONObject_.json @@ -2,7 +2,7 @@ "brief": "Takes a String, parses its contents, and returns a\n JSONObject", "related": ["loadJSONObject_", "saveJSONObject_"], "name": "parseJSONObject()", - "description": "Takes a String, parses its contents, and returns a\n JSONObject. If the String does not contain JSONObject\n data or cannot be parsed, a null value is returned.
\n
\n parseJSONObject() is most useful when pulling data dynamically, such\n as from third-party APIs. Normally, API results would be saved to a\n String, and then can be converted to a structured JSONObject\n using parseJSONObject(). Be sure to check if null is returned\n before performing operations on the new JSONObject in case the\n String content could not be parsed.
\n
\n If your data already exists as a JSON file in the data folder, it is\n simpler to use loadJSONObject().", + "description": "Takes a String, parses its contents, and returns a\n JSONObject. If the String does not contain JSONObject\n data or cannot be parsed, a null value is returned.
\n
\n parseJSONObject() is most useful when pulling data dynamically, such\n as from third-party APIs. Normally, API results would be saved to a\n String, and then can be converted to a structured JSONObject\n using parseJSONObject(). Be sure to check if null is returned\n before performing operations on the new JSONObject in case the\n String content could not be parsed.
\n
\n If your data already exists as a JSON file in the data folder, it is\n simpler to use loadJSONObject().", "syntax": ["parseJSONObject(input)"], "returns": "JSONObject", "type": "function", diff --git a/content/references/translations/en/processing/parseXML_.json b/content/references/translations/en/processing/parseXML_.json index 097beae6d..c2297bc28 100644 --- a/content/references/translations/en/processing/parseXML_.json +++ b/content/references/translations/en/processing/parseXML_.json @@ -2,7 +2,7 @@ "brief": "Converts String content to an XML object", "related": ["XML", "loadXML_", "saveXML_"], "name": "parseXML()", - "description": "Takes a String, parses its contents, and returns an XML object. If the\n String does not contain XML data or cannot be parsed, a null value is\n returned.
\n
\n parseXML() is most useful when pulling data dynamically, such as\n from third-party APIs. Normally, API results would be saved to a String,\n and then can be converted to a structured XML object using\n parseXML(). Be sure to check if null is returned before performing\n operations on the new XML object, in case the String content could not be\n parsed.
\n
\n If your data already exists as an XML file in the data folder, it is\n simpler to use loadXML().", + "description": "Takes a String, parses its contents, and returns an XML object. If the\n String does not contain XML data or cannot be parsed, a null value is\n returned.
\n
\n parseXML() is most useful when pulling data dynamically, such as\n from third-party APIs. Normally, API results would be saved to a String,\n and then can be converted to a structured XML object using\n parseXML(). Be sure to check if null is returned before performing\n operations on the new XML object, in case the String content could not be\n parsed.
\n
\n If your data already exists as an XML file in the data folder, it is\n simpler to use loadXML().", "syntax": ["parseXML(xmlString)", "parseXML(xmlString, options)"], "returns": "XML", "type": "function", diff --git a/content/references/translations/en/processing/perspective_.json b/content/references/translations/en/processing/perspective_.json index 3c6d5c1a5..e4c02ab07 100644 --- a/content/references/translations/en/processing/perspective_.json +++ b/content/references/translations/en/processing/perspective_.json @@ -26,7 +26,7 @@ }, { "name": "zFar", - "description": "z-position of farthest clipping plane", + "description": "z-position of the farthest clipping plane", "type": ["float"] } ] diff --git a/content/references/translations/en/processing/pixelDensity_.json b/content/references/translations/en/processing/pixelDensity_.json index 11d8f1a14..01bddaecd 100644 --- a/content/references/translations/en/processing/pixelDensity_.json +++ b/content/references/translations/en/processing/pixelDensity_.json @@ -1,8 +1,8 @@ { - "brief": "It makes it possible for Processing to render using all of the\n pixels on high resolutions screens", + "brief": "It makes it possible for Processing to render using all the\n pixels on high resolutions screens", "related": ["pixelWidth", "pixelHeight"], "name": "pixelDensity()", - "description": "This function is new with Processing 3.0. It makes it\n possible for Processing to render using all of the\n pixels on high resolutions screens like Apple Retina\n displays and Windows High-DPI displays. This function\n can only be run once within a program and it must be\n used right after size() in a program without a setup()\n and used within setup() when a program has one. The\n pixelDensity() should only be used with hardcoded\n numbers (in almost all cases this number will be 2)\n or in combination with displayDensity() as in the\n third example above.\n\n When the pixel density is set to more than 1, it\n changes all of the pixel operations including the way\n get(), set(), blend(), copy(), and updatePixels()\n all work. See the reference for pixelWidth and\n pixelHeight for more information.\n\n To use variables as the arguments to pixelDensity()\n function, place the pixelDensity() function within\n the settings() function. There is more information\n about this on the settings() reference page.", + "description": "This function makes it possible to render using all the pixels\n on high resolutions screens like Apple Retina and Windows HiDPI.\n This function can only be run once within a program, and must\n be called right after size() in a program without a\n setup() function, or within setup() if present.\n

\n pixelDensity() should only be used with hardcoded\n numbers (in almost all cases this number will be 2)\n or in combination with displayDensity() as in the\n third example above.\n

\n When the pixel density is set to more than 1, it changes the\n pixel operations including the way get(), set(),\n blend(), copy(), and updatePixels()\n all work. See the reference for pixelWidth and\n pixelHeight for more information.\n

\n To use variables as the arguments to pixelDensity()\n function, place the pixelDensity() function within\n the settings() function. There is more information\n about this on the settings() reference page.", "syntax": ["pixelDensity(density)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/pixels.json b/content/references/translations/en/processing/pixels.json index 3ee2ceca8..a2e23bbf1 100644 --- a/content/references/translations/en/processing/pixels.json +++ b/content/references/translations/en/processing/pixels.json @@ -11,7 +11,7 @@ "pixelHeight" ], "name": "pixels[]", - "description": "The pixels[] array contains the values for all the pixels in the\n display window. These values are of the color datatype. This array is\n defined by the size of the display window. For example, if the window is\n 100 x 100 pixels, there will be 10,000 values and if the window is\n 200 x 300 pixels, there will be 60,000 values. When the pixel density is\n set to higher than 1 with the pixelDensity() function, these values\n will change. See the reference for pixelWidth or pixelHeight\n for more information.\n

\n Before accessing this array, the data must loaded with the loadPixels()\n function. Failure to do so may result in a NullPointerException. Subsequent\n changes to the display window will not be reflected in pixels until\n loadPixels() is called again. After pixels has been modified,\n the updatePixels() function must be run to update the content of the\n display window.", + "description": "The pixels[] array contains the values for all the pixels in the\n display window. These values are of the color datatype. This array is\n defined by the size of the display window. For example, if the window is\n 100 x 100 pixels, there will be 10,000 values and if the window is\n 200 x 300 pixels, there will be 60,000 values. When the pixel density is\n set to higher than 1 with the pixelDensity() function, these values\n will change. See the reference for pixelWidth or pixelHeight\n for more information.\n

\n Before accessing this array, the data must be loaded with the loadPixels()\n function. Failure to do so may result in a NullPointerException. Subsequent\n changes to the display window will not be reflected in pixels until\n loadPixels() is called again. After pixels has been modified,\n the updatePixels() function must be run to update the content of the\n display window.", "category": "image", "subcategory": "pixels", "type": "other" diff --git a/content/references/translations/en/processing/pmouseX.json b/content/references/translations/en/processing/pmouseX.json index cf4bc39d3..139a0096c 100644 --- a/content/references/translations/en/processing/pmouseX.json +++ b/content/references/translations/en/processing/pmouseX.json @@ -14,7 +14,7 @@ "mouseWheel_" ], "name": "pmouseX", - "description": "The system variable pmouseX always contains the horizontal\n position of the mouse in the frame previous to the current frame.
\n
\n You may find that pmouseX and pmouseY have different values\n when referenced inside of draw() and inside of mouse events like\n mousePressed() and mouseMoved(). Inside draw(),\n pmouseX and pmouseY update only once per frame (once per trip\n through the draw() loop). But inside mouse events, they update each\n time the event is called. If these values weren't updated immediately during\n events, then the mouse position would be read only once per frame, resulting\n in slight delays and choppy interaction. If the mouse variables were always\n updated multiple times per frame, then something like line(pmouseX, pmouseY,\n mouseX, mouseY) inside draw() would have lots of gaps, because\n pmouseX may have changed several times in between the calls to\n line().

\n If you want values relative to the previous frame, use pmouseX and\n pmouseY inside draw(). If you want continuous response, use\n pmouseX and pmouseY inside the mouse event functions.", + "description": "The system variable pmouseX always contains the horizontal\n position of the mouse in the frame previous to the current frame.
\n
\n You may find that pmouseX and pmouseY have different values\n when referenced inside of draw() and inside of mouse events like\n mousePressed() and mouseMoved(). Inside draw(),\n pmouseX and pmouseY update only once per frame (once per trip\n through the draw() loop). But inside mouse events, they update each\n time the event is called. If these values weren't updated immediately during\n events, then the mouse position would be read only once per frame, resulting\n in slight delays and choppy interaction. If the mouse variables were always\n updated multiple times per frame, then something like line(pmouseX, pmouseY,\n mouseX, mouseY) inside draw() would have lots of gaps, because\n pmouseX may have changed several times in between the calls to\n line().

\n If you want values relative to the previous frame, use pmouseX and\n pmouseY inside draw(). If you want continuous response, use\n pmouseX and pmouseY inside the mouse event functions.", "category": "input", "subcategory": "mouse", "type": "other" diff --git a/content/references/translations/en/processing/point_.json b/content/references/translations/en/processing/point_.json index 10482c535..b2f157bd0 100644 --- a/content/references/translations/en/processing/point_.json +++ b/content/references/translations/en/processing/point_.json @@ -2,7 +2,7 @@ "brief": "Draws a point, a coordinate in space at the dimension of one pixel", "related": ["stroke_"], "name": "point()", - "description": "Draws a point, a coordinate in space at the dimension of one pixel. The first\n parameter is the horizontal value for the point, the second value is the\n vertical value for the point, and the optional third value is the depth\n value. Drawing this shape in 3D with the z parameter requires the P3D\n parameter in combination with size() as shown in the above example.\n
\n
\n Use stroke() to set the color of a point().
\n
\n Point appears round with the default strokeCap(ROUND) and square with\n strokeCap(PROJECT). Points are invisible with strokeCap(SQUARE)\n (no cap).
\n
\n Using point() with strokeWeight(1) or smaller may draw nothing to the screen,\n depending on the graphics settings of the computer. Workarounds include\n setting the pixel using set() or drawing the point using either\n circle() or square().", + "description": "Draws a point, a coordinate in space at the dimension of one pixel. The first\n parameter is the horizontal value for the point, the second value is the\n vertical value for the point, and the optional third value is the depth\n value. Drawing this shape in 3D with the z parameter requires the P3D\n parameter in combination with size() as shown in the above example.\n
\n
\n Use stroke() to set the color of a point().
\n
\n Point appears round with the default strokeCap(ROUND) and square with\n strokeCap(PROJECT). Points are invisible with strokeCap(SQUARE)\n (no cap).
\n
\n Using point() with strokeWeight(1) or smaller may draw nothing to the screen,\n depending on the graphics settings of the computer. Workarounds include\n setting the pixel using set() or drawing the point using either\n circle() or square().", "syntax": ["point(x, y)", "point(x, y, z)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/pop_.json b/content/references/translations/en/processing/pop_.json index ad56923d8..e4beb793c 100644 --- a/content/references/translations/en/processing/pop_.json +++ b/content/references/translations/en/processing/pop_.json @@ -2,7 +2,7 @@ "brief": "The pop() function restores the previous drawing style\n settings and transformations after push() has changed them", "related": ["push_"], "name": "pop()", - "description": "The pop() function restores the previous drawing style\n settings and transformations after push() has changed them.\n Note that these functions are always used together. They allow\n you to change the style and transformation settings and later\n return to what you had. When a new state is started with push(),\n it builds on the current style and transform information.\n
\n
\n push() stores information related to the current\n transformation state and style settings controlled by the\n following functions: rotate(), translate(),\n scale(), fill(), stroke(), tint(),\n strokeWeight(), strokeCap(), strokeJoin(),\n imageMode(), rectMode(), ellipseMode(),\n colorMode(), textAlign(), textFont(),\n textMode(), textSize(), textLeading().
\n
\n The push() and pop() functions were added with\n Processing 3.5. They can be used in place of pushMatrix(),\n popMatrix(), pushStyles(), and popStyles().\n The difference is that push() and pop() control both the\n transformations (rotate, scale, translate) and the drawing styles\n at the same time.", + "description": "The pop() function restores the previous drawing style\n settings and transformations after push() has changed them.\n Note that these functions are always used together. They allow\n you to change the style and transformation settings and later\n return to what you had. When a new state is started with push(),\n it builds on the current style and transform information.\n
\n
\n push() stores information related to the current\n transformation state and style settings controlled by the\n following functions: rotate(), translate(),\n scale(), fill(), stroke(), tint(),\n strokeWeight(), strokeCap(), strokeJoin(),\n imageMode(), rectMode(), ellipseMode(),\n colorMode(), textAlign(), textFont(),\n textMode(), textSize(), textLeading().
\n
\n The push() and pop() functions were added with\n Processing 3.5. They can be used in place of pushMatrix(),\n popMatrix(), pushStyles(), and popStyles().\n The difference is that push() and pop() control both the\n transformations (rotate, scale, translate) and the drawing styles\n at the same time.", "syntax": ["pop()"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/print_.json b/content/references/translations/en/processing/print_.json index 74ec285da..8f06d51e8 100644 --- a/content/references/translations/en/processing/print_.json +++ b/content/references/translations/en/processing/print_.json @@ -2,7 +2,7 @@ "brief": "Writes to the console area of the Processing environment", "related": ["println_", "printArray_", "join_"], "name": "print()", - "description": "The print() function writes to the console area, the black rectangle\n at the bottom of the Processing environment. This function is often helpful\n for looking at the data a program is producing. The companion function\n println() works like print(), but creates a new line of text\n for each call to the function. More than one parameter can be passed into the\n function by separating them with commas. Alternatively, individual elements\n can be separated with quotes (\"\") and joined with the addition operator\n (+).
\n
\n Using print() on an object will output null, a memory location\n that may look like \"@10be08,\" or the result of the toString() method\n from the object that's being printed. Advanced users who want more useful\n output when calling print() on their own classes can add a\n toString() method to the class that returns a String.
\n
\n Note that the console is relatively slow. It works well for occasional\n messages, but does not support high-speed, real-time output (such as at 60\n frames per second). It should also be noted, that a print() within a for loop\n can sometimes lock up the program, and cause the sketch to freeze.", + "description": "The print() function writes to the console area, the black rectangle\n at the bottom of the Processing environment. This function is often helpful\n for looking at the data a program is producing. The companion function\n println() works like print(), but creates a new line of text\n for each call to the function. More than one parameter can be passed into the\n function by separating them with commas. Alternatively, individual elements\n can be separated with quotes (\"\") and joined with the addition operator\n (+).
\n
\n Using print() on an object will output null, a memory location\n that may look like \"@10be08,\" or the result of the toString() method\n from the object that's being printed. Advanced users who want more useful\n output when calling print() on their own classes can add a\n toString() method to the class that returns a String.
\n
\n Note that the console is relatively slow. It works well for occasional\n messages, but does not support high-speed, real-time output (such as at 60\n frames per second). It should also be noted, that a print() within a for loop\n can sometimes lock up the program, and cause the sketch to freeze.", "syntax": ["print(what)", "print(variables)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/println_.json b/content/references/translations/en/processing/println_.json index 8a8f5e501..3a17e63c7 100644 --- a/content/references/translations/en/processing/println_.json +++ b/content/references/translations/en/processing/println_.json @@ -2,7 +2,7 @@ "brief": "Writes to the text area of the Processing environment's console", "related": ["print_", "printArray_"], "name": "println()", - "description": "The println() function writes to the console area, the black\n rectangle at the bottom of the Processing environment. This function is\n often helpful for looking at the data a program is producing. Each call to\n this function creates a new line of output. More than one parameter can be\n passed into the function by separating them with commas. Alternatively,\n individual elements can be separated with quotes (\"\") and joined with the\n addition operator (+).
\n
\n Before Processing 2.1, println() was used to write array data to the\n console. Now, use printArray() to write array data to the\n console.
\n
\n Note that the console is relatively slow. It works well for occasional\n messages, but does not support high-speed, real-time output (such as at 60\n frames per second). It should also be noted, that a println() within a for\n loop can sometimes lock up the program, and cause the sketch to freeze.", + "description": "The println() function writes to the console area, the black\n rectangle at the bottom of the Processing environment. This function is\n often helpful for looking at the data a program is producing. Each call to\n this function creates a new line of output. More than one parameter can be\n passed into the function by separating them with commas. Alternatively,\n individual elements can be separated with quotes (\"\") and joined with the\n addition operator (+).
\n
\n Before Processing 2.1, println() was used to write array data to the\n console. Now, use printArray() to write array data to the\n console.
\n
\n Note that the console is relatively slow. It works well for occasional\n messages, but does not support high-speed, real-time output (such as at 60\n frames per second). It should also be noted, that a println() within a for\n loop can sometimes lock up the program, and cause the sketch to freeze.", "syntax": ["println()", "println(what)", "println(variables)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/pushStyle_.json b/content/references/translations/en/processing/pushStyle_.json index 8a3b16b09..2b7a98591 100644 --- a/content/references/translations/en/processing/pushStyle_.json +++ b/content/references/translations/en/processing/pushStyle_.json @@ -2,7 +2,7 @@ "brief": "Saves the current style settings and popStyle() restores the prior settings", "related": ["popStyle_"], "name": "pushStyle()", - "description": "The pushStyle() function saves the current style settings and\n popStyle() restores the prior settings. Note that these functions\n are always used together. They allow you to change the style settings\n and later return to what you had. When a new style is started with\n pushStyle(), it builds on the current style information. The\n pushStyle() and popStyle() functions can be embedded to\n provide more control (see the second example above for a demonstration.)\n

\n The style information controlled by the following functions are included\n in the style:\n fill(), stroke(), tint(), strokeWeight(), strokeCap(),strokeJoin(),\n imageMode(), rectMode(), ellipseMode(), shapeMode(), colorMode(),\n textAlign(), textFont(), textMode(), textSize(), textLeading(),\n emissive(), specular(), shininess(), ambient()", + "description": "The pushStyle() function saves the current style settings and\n popStyle() restores the prior settings. Note that these functions\n are always used together. They allow you to change the style settings\n and later return to what you had. When a new style is started with\n pushStyle(), it builds on the current style information. The\n pushStyle() and popStyle() functions can be embedded to\n provide more control (see the second example above for a demonstration.)\n

\n The style information controlled by the following functions are included\n in the style:\n fill(), stroke(), tint(), strokeWeight(), strokeCap(),strokeJoin(),\n imageMode(), rectMode(), ellipseMode(), shapeMode(), colorMode(),\n textAlign(), textFont(), textMode(), textSize(), textLeading(),\n emissive(), specular(), shininess(), ambient()", "syntax": ["pushStyle()"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/push_.json b/content/references/translations/en/processing/push_.json index 8be60d89a..696806203 100644 --- a/content/references/translations/en/processing/push_.json +++ b/content/references/translations/en/processing/push_.json @@ -2,7 +2,7 @@ "brief": "The push() function saves the current drawing style\n settings and transformations, while pop() restores these\n settings", "related": ["pop_"], "name": "push()", - "description": "The push() function saves the current drawing style\n settings and transformations, while pop() restores these\n settings. Note that these functions are always used together.\n They allow you to change the style and transformation settings\n and later return to what you had. When a new state is started\n with push(), it builds on the current style and transform\n information.
\n
\n push() stores information related to the current\n transformation state and style settings controlled by the\n following functions: rotate(), translate(),\n scale(), fill(), stroke(), tint(),\n strokeWeight(), strokeCap(), strokeJoin(),\n imageMode(), rectMode(), ellipseMode(),\n colorMode(), textAlign(), textFont(),\n textMode(), textSize(), textLeading().
\n
\n The push() and pop() functions were added with\n Processing 3.5. They can be used in place of pushMatrix(),\n popMatrix(), pushStyles(), and popStyles().\n The difference is that push() and pop() control both the\n transformations (rotate, scale, translate) and the drawing styles\n at the same time.", + "description": "The push() function saves the current drawing style\n settings and transformations, while pop() restores these\n settings. Note that these functions are always used together.\n They allow you to change the style and transformation settings\n and later return to what you had. When a new state is started\n with push(), it builds on the current style and transform\n information.
\n
\n push() stores information related to the current\n transformation state and style settings controlled by the\n following functions: rotate(), translate(),\n scale(), fill(), stroke(), tint(),\n strokeWeight(), strokeCap(), strokeJoin(),\n imageMode(), rectMode(), ellipseMode(),\n colorMode(), textAlign(), textFont(),\n textMode(), textSize(), textLeading().
\n
\n The push() and pop() functions were added with\n Processing 3.5. They can be used in place of pushMatrix(),\n popMatrix(), pushStyles(), and popStyles().\n The difference is that push() and pop() control both the\n transformations (rotate, scale, translate) and the drawing styles\n at the same time.", "syntax": ["push()"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/quadraticVertex_.json b/content/references/translations/en/processing/quadraticVertex_.json index 376a17eea..148f57de4 100644 --- a/content/references/translations/en/processing/quadraticVertex_.json +++ b/content/references/translations/en/processing/quadraticVertex_.json @@ -2,7 +2,7 @@ "brief": "Specifies vertex coordinates for quadratic Bezier curves", "related": ["curveVertex_", "vertex_", "bezierVertex_", "bezier_"], "name": "quadraticVertex()", - "description": "Specifies vertex coordinates for quadratic Bezier curves. Each call\n to quadraticVertex() defines the position of one control\n point and one anchor point of a Bezier curve, adding a new segment\n to a line or shape. The first time quadraticVertex() is used\n within a beginShape() call, it must be prefaced with a call\n to vertex() to set the first anchor point. This function must\n be used between beginShape() and endShape() and only\n when there is no MODE parameter specified to beginShape().\n Using the 3D version requires rendering with P3D (see the Environment\n reference for more information).", + "description": "Specifies vertex coordinates for quadratic Bézier curves. Each call\n to quadraticVertex() defines the position of one control\n point and one anchor point of a Bézier curve, adding a new segment\n to a line or shape. The first time quadraticVertex() is used\n within a beginShape() call, it must be prefaced with a call\n to vertex() to set the first anchor point. This function must\n be used between beginShape() and endShape() and only\n when there is no MODE parameter specified to beginShape().\n Using the 3D version requires rendering with P3D (see the Environment\n reference for more information).", "syntax": [ "quadraticVertex(cx, cy, x3, y3)", "quadraticVertex(cx, cy, cz, x3, y3, z3)" diff --git a/content/references/translations/en/processing/random_.json b/content/references/translations/en/processing/random_.json index 152af2cc5..5e9bfe876 100644 --- a/content/references/translations/en/processing/random_.json +++ b/content/references/translations/en/processing/random_.json @@ -2,7 +2,7 @@ "brief": "Generates random numbers", "related": ["randomSeed_", "noise_"], "name": "random()", - "description": "Generates random numbers. Each time the random() function is called,\n it returns an unexpected value within the specified range. If only one\n parameter is passed to the function, it will return a float between zero\n and the value of the high parameter. For example, random(5)\n returns values between 0 and 5 (starting at zero, and up to, but not\n including, 5).
\n
\n If two parameters are specified, the function will return a float with a\n value between the two values. For example, random(-5, 10.2) returns\n values starting at -5 and up to (but not including) 10.2. To convert a\n floating-point random number to an integer, use the int() function.", + "description": "Generates random numbers. Each time the random() function is called,\n it returns an unexpected value within the specified range. If only one\n parameter is passed to the function, it will return a float between zero\n and the value of the high parameter. For example, random(5)\n returns values between 0 and 5 (starting at zero, and up to, but not\n including, 5).
\n
\n If two parameters are specified, the function will return a float with a\n value between the two values. For example, random(-5, 10.2) returns\n values starting at -5 and up to (but not including) 10.2. To convert a\n floating-point random number to an integer, use the int() function.", "syntax": ["random(high)", "random(low, high)"], "returns": "float", "type": "function", diff --git a/content/references/translations/en/processing/rectMode_.json b/content/references/translations/en/processing/rectMode_.json index 9ec3dab77..5b58032b2 100644 --- a/content/references/translations/en/processing/rectMode_.json +++ b/content/references/translations/en/processing/rectMode_.json @@ -2,7 +2,7 @@ "brief": "Modifies the location from which rectangles draw", "related": ["rect_"], "name": "rectMode()", - "description": "Modifies the location from which rectangles are drawn by changing the way in\n which parameters given to rect() are interpreted.
\n
\n The default mode is rectMode(CORNER), which interprets the first two\n parameters of rect() as the upper-left corner of the shape, while the\n third and fourth parameters are its width and height.
\n
\n rectMode(CORNERS) interprets the first two parameters of rect()\n as the location of one corner, and the third and fourth parameters as the\n location of the opposite corner.
\n
\n rectMode(CENTER) interprets the first two parameters of rect()\n as the shape's center point, while the third and fourth parameters are its\n width and height.
\n
\n rectMode(RADIUS) also uses the first two parameters of rect()\n as the shape's center point, but uses the third and fourth parameters to\n specify half of the shape's width and height.
\n
\n The parameter must be written in ALL CAPS because Processing is a\n case-sensitive language.", + "description": "Modifies the location from which rectangles are drawn by changing the way in\n which parameters given to rect() are interpreted.
\n
\n The default mode is rectMode(CORNER), which interprets the first two\n parameters of rect() as the upper-left corner of the shape, while the\n third and fourth parameters are its width and height.
\n
\n rectMode(CORNERS) interprets the first two parameters of rect()\n as the location of one corner, and the third and fourth parameters as the\n location of the opposite corner.
\n
\n rectMode(CENTER) interprets the first two parameters of rect()\n as the shape's center point, while the third and fourth parameters are its\n width and height.
\n
\n rectMode(RADIUS) also uses the first two parameters of rect()\n as the shape's center point, but uses the third and fourth parameters to\n specify half of the shape's width and height.
\n
\n The parameter must be written in ALL CAPS because Processing is a\n case-sensitive language.", "syntax": ["rectMode(mode)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/rect_.json b/content/references/translations/en/processing/rect_.json index ac9a82752..d2d3e44cf 100644 --- a/content/references/translations/en/processing/rect_.json +++ b/content/references/translations/en/processing/rect_.json @@ -2,7 +2,7 @@ "brief": "Draws a rectangle to the screen", "related": ["rectMode_", "quad_"], "name": "rect()", - "description": "Draws a rectangle to the screen. A rectangle is a four-sided shape with every\n angle at ninety degrees. By default, the first two parameters set the\n location of the upper-left corner, the third sets the width, and the fourth\n sets the height. The way these parameters are interpreted, however, may be\n changed with the rectMode() function.
\n
\n To draw a rounded rectangle, add a fifth parameter, which is used as the\n radius value for all four corners.
\n
\n To use a different radius value for each corner, include eight parameters.\n When using eight parameters, the latter four set the radius of the arc at\n each corner separately, starting with the top-left corner and moving\n clockwise around the rectangle.", + "description": "Draws a rectangle to the screen. A rectangle is a four-sided shape with every\n angle at ninety degrees. By default, the first two parameters set the\n location of the upper-left corner, the third sets the width, and the fourth\n sets the height. The way these parameters are interpreted, however, may be\n changed with the rectMode() function.
\n
\n To draw a rounded rectangle, add a fifth parameter, which is used as the\n radius value for all four corners.
\n
\n To use a different radius value for each corner, include eight parameters.\n When using eight parameters, the latter four set the radius of the arc at\n each corner separately, starting with the top-left corner and moving\n clockwise around the rectangle.", "syntax": [ "rect(a, b, c, d)", "rect(a, b, c, d, r)", diff --git a/content/references/translations/en/processing/red_.json b/content/references/translations/en/processing/red_.json index 7392bd17d..5a970880a 100644 --- a/content/references/translations/en/processing/red_.json +++ b/content/references/translations/en/processing/red_.json @@ -10,7 +10,7 @@ "rightshift_" ], "name": "red()", - "description": "Extracts the red value from a color, scaled to match current\n colorMode(). The value is always returned as a float, so be careful\n not to assign it to an int value.
\n
\n The red() function is easy to use and understand, but it is slower\n than a technique called bit shifting. When working in colorMode(RGB,\n 255), you can achieve the same results as red() but with greater\n speed by using the right shift operator (>>) with a bit mask. For\n example, the following two lines of code are equivalent means of getting the\n red value of the color value c:
\n
\n\n

\n float r1 = red(c); // Simpler, but slower to calculate\n float r2 = c >> 16 & 0xFF; // Very fast to calculate\n 
", + "description": "Extracts the red value from a color, scaled to match current\n colorMode(). The value is always returned as a float, so be careful\n not to assign it to an int value.
\n
\n The red() function is easy to use and understand, but it is slower\n than a technique called bit shifting. When working in colorMode(RGB,\n 255), you can achieve the same results as red() but with greater\n speed by using the right shift operator (>>) with a bit mask. For\n example, the following two lines of code are equivalent means of getting the\n red value of the color value c:
\n
\n\n
\n float r1 = red(c); // Simpler, but slower to calculate\n float r2 = c >> 16 & 0xFF; // Very fast to calculate\n 
", "syntax": ["red(rgb)"], "returns": "float", "type": "function", diff --git a/content/references/translations/en/processing/requestImage_.json b/content/references/translations/en/processing/requestImage_.json index 2dd905a40..bc5fac772 100644 --- a/content/references/translations/en/processing/requestImage_.json +++ b/content/references/translations/en/processing/requestImage_.json @@ -2,7 +2,7 @@ "brief": "Loads images on a separate thread so that your sketch does not\n freeze while images load during setup()", "related": ["PImage", "loadImage_"], "name": "requestImage()", - "description": "This function loads images on a separate thread so that your sketch doesn't\n freeze while images load during setup(). While the image is loading,\n its width and height will be 0. If an error occurs while loading the image,\n its width and height will be set to -1. You'll know when the image has\n loaded properly because its width and height will be greater\n than 0. Asynchronous image loading (particularly when downloading from a\n server) can dramatically improve performance.
\n
\n The extension parameter is used to determine the image type in cases\n where the image filename does not end with a proper extension. Specify the\n extension as the second parameter to requestImage().", + "description": "This function loads images on a separate thread so that your sketch doesn't\n freeze while images load during setup(). While the image is loading,\n its width and height will be 0. If an error occurs while loading the image,\n its width and height will be set to -1. You'll know when the image has\n loaded properly because its width and height will be greater\n than 0. Asynchronous image loading (particularly when downloading from a\n server) can dramatically improve performance.
\n
\n The extension parameter is used to determine the image type in cases\n where the image filename does not end with a proper extension. Specify the\n extension as the second parameter to requestImage().", "syntax": ["requestImage(filename)", "requestImage(filename, extension)"], "returns": "PImage", "type": "function", diff --git a/content/references/translations/en/processing/resetMatrix_.json b/content/references/translations/en/processing/resetMatrix_.json index dca7f1661..d4795055f 100644 --- a/content/references/translations/en/processing/resetMatrix_.json +++ b/content/references/translations/en/processing/resetMatrix_.json @@ -2,7 +2,7 @@ "brief": "Replaces the current matrix with the identity matrix", "related": ["pushMatrix_", "popMatrix_", "applyMatrix_", "printMatrix_"], "name": "resetMatrix()", - "description": "Replaces the current matrix with the identity matrix. The equivalent function\n in OpenGL is glLoadIdentity().", + "description": "Replaces the current matrix with the identity matrix.\n The equivalent function in OpenGL is glLoadIdentity().", "syntax": ["resetMatrix()"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/saveFrame_.json b/content/references/translations/en/processing/saveFrame_.json index b4ea30c38..6e705519e 100644 --- a/content/references/translations/en/processing/saveFrame_.json +++ b/content/references/translations/en/processing/saveFrame_.json @@ -2,7 +2,7 @@ "brief": "Saves a numbered sequence of images, one image each time the\n function is run", "related": ["save_", "createGraphics_", "frameCount"], "name": "saveFrame()", - "description": "Saves a numbered sequence of images, one image each time the function is\n run. To save an image that is identical to the display window, run the\n function at the end of draw() or within mouse and key events such as\n mousePressed() and keyPressed(). Use the Movie Maker program\n in the Tools menu to combine these images to a movie.
\n
\n If saveFrame() is used without parameters, it will save files as\n screen-0000.tif, screen-0001.tif, and so on. You can specify the name of\n the sequence with the filename parameter, including hash marks\n (####), which will be replaced by the current frameCount value. (The\n number of hash marks is used to determine how many digits to include in the\n file names.) Append a file extension, to indicate the file format to be\n used: either TIFF (.tif), TARGA (.tga), JPEG (.jpg), or PNG (.png). Image\n files are saved to the sketch's folder, which may be opened by selecting\n \"Show Sketch Folder\" from the \"Sketch\" menu.
\n
\n Alternatively, the files can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows).
\n
\n All images saved from the main drawing window will be opaque. To save\n images without a background, use createGraphics().", + "description": "Saves a numbered sequence of images, one image each time the function is\n run. To save an image that is identical to the display window, run the\n function at the end of draw() or within mouse and key events such as\n mousePressed() and keyPressed(). Use the Movie Maker program\n in the Tools menu to combine these images to a movie.
\n
\n If saveFrame() is used without parameters, it will save files as\n screen-0000.tif, screen-0001.tif, and so on. You can specify the name of\n the sequence with the filename parameter, including hash marks\n (####), which will be replaced by the current frameCount value. (The\n number of hash marks is used to determine how many digits to include in the\n file names.) Append a file extension, to indicate the file format to be\n used: either TIFF (.tif), TARGA (.tga), JPEG (.jpg), or PNG (.png). Image\n files are saved to the sketch's folder, which may be opened by selecting\n \"Show Sketch Folder\" from the \"Sketch\" menu.
\n
\n Alternatively, the files can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows).
\n
\n All images saved from the main drawing window will be opaque. To save\n images without a background, use createGraphics().", "syntax": ["saveFrame()", "saveFrame(filename)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/saveJSONArray_.json b/content/references/translations/en/processing/saveJSONArray_.json index 6cf238229..0adbd0c5a 100644 --- a/content/references/translations/en/processing/saveJSONArray_.json +++ b/content/references/translations/en/processing/saveJSONArray_.json @@ -8,7 +8,7 @@ "saveJSONObject_" ], "name": "saveJSONArray()", - "description": "Writes the contents of a JSONArray object to a file. By default,\n this file is saved to the sketch's folder. This folder is opened by\n selecting \"Show Sketch Folder\" from the \"Sketch\" menu.
\n
\n Alternatively, the file can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows).
\n
\n All files loaded and saved by the Processing API use UTF-8 encoding.", + "description": "Writes the contents of a JSONArray object to a file. By default,\n this file is saved to the sketch's folder. This folder is opened by\n selecting \"Show Sketch Folder\" from the \"Sketch\" menu.
\n
\n Alternatively, the file can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows).
\n
\n All files loaded and saved by the Processing API use UTF-8 encoding.", "syntax": [ "saveJSONArray(json, filename)", "saveJSONArray(json, filename, options)" diff --git a/content/references/translations/en/processing/saveJSONObject_.json b/content/references/translations/en/processing/saveJSONObject_.json index 17ffd5bf2..4a960494d 100644 --- a/content/references/translations/en/processing/saveJSONObject_.json +++ b/content/references/translations/en/processing/saveJSONObject_.json @@ -8,7 +8,7 @@ "saveJSONArray_" ], "name": "saveJSONObject()", - "description": "Writes the contents of a JSONObject object to a file. By default,\n this file is saved to the sketch's folder. This folder is opened by\n selecting \"Show Sketch Folder\" from the \"Sketch\" menu.
\n
\n Alternatively, the file can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows).
\n
\n All files loaded and saved by the Processing API use UTF-8 encoding.", + "description": "Writes the contents of a JSONObject object to a file. By default,\n this file is saved to the sketch's folder. This folder is opened by\n selecting \"Show Sketch Folder\" from the \"Sketch\" menu.
\n
\n Alternatively, the file can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows).
\n
\n All files loaded and saved by the Processing API use UTF-8 encoding.", "syntax": [ "saveJSONObject(json, filename)", "saveJSONObject(json, filename, options)" diff --git a/content/references/translations/en/processing/saveStream_.json b/content/references/translations/en/processing/saveStream_.json index 8aa0fcb79..51c7b33dc 100644 --- a/content/references/translations/en/processing/saveStream_.json +++ b/content/references/translations/en/processing/saveStream_.json @@ -2,7 +2,7 @@ "brief": "Save the contents of a stream to a file in the sketch folder", "related": ["createOutput_"], "name": "saveStream()", - "description": "Save the contents of a stream to a file in the sketch folder. This is\n basically saveBytes(blah, loadBytes()), but done more efficiently\n (and with less confusing syntax).
\n
\n The target parameter can be either a String specifying a file name,\n or, for greater control over the file location, a File object. (Note\n that, unlike some other functions, this will not automatically compress or\n uncompress gzip files.)", + "description": "Save the contents of a stream to a file in the sketch folder. This is\n basically saveBytes(blah, loadBytes()), but done more efficiently\n (and with less confusing syntax).
\n
\n The target parameter can be either a String specifying a file name,\n or, for greater control over the file location, a File object. (Note\n that, unlike some other functions, this will not automatically compress or\n uncompress gzip files.)", "syntax": ["saveStream(target, source)"], "returns": "boolean or void", "type": "function", diff --git a/content/references/translations/en/processing/saveStrings_.json b/content/references/translations/en/processing/saveStrings_.json index ab4c86f5e..d85f1b4b9 100644 --- a/content/references/translations/en/processing/saveStrings_.json +++ b/content/references/translations/en/processing/saveStrings_.json @@ -2,7 +2,7 @@ "brief": "Writes an array of strings to a file, one line per string", "related": ["loadStrings_", "loadBytes_", "saveBytes_"], "name": "saveStrings()", - "description": "Writes an array of Strings to a file, one line per String. By default, this\n file is saved to the sketch's folder. This folder is opened by selecting\n \"Show Sketch Folder\" from the \"Sketch\" menu.
\n
\n Alternatively, the file can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows).
\n
\n Starting with Processing 1.0, all files loaded and saved by the Processing\n API use UTF-8 encoding. In earlier releases, the default encoding for your\n platform was used, which causes problems when files are moved to other\n platforms.", + "description": "Writes an array of Strings to a file, one line per String. By default, this\n file is saved to the sketch's folder. This folder is opened by selecting\n \"Show Sketch Folder\" from the \"Sketch\" menu.
\n
\n Alternatively, the file can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows).
\n
\n Starting with Processing 1.0, all files loaded and saved by the Processing\n API use UTF-8 encoding. In earlier releases, the default encoding for your\n platform was used, which causes problems when files are moved to other\n platforms.", "syntax": ["saveStrings(filename, data)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/saveTable_.json b/content/references/translations/en/processing/saveTable_.json index c3c37c054..21f5137b6 100644 --- a/content/references/translations/en/processing/saveTable_.json +++ b/content/references/translations/en/processing/saveTable_.json @@ -2,7 +2,7 @@ "brief": "Writes the contents of a Table object to a file", "related": ["Table", "loadTable_"], "name": "saveTable()", - "description": "Writes the contents of a Table object to a file. By default, this file is\n saved to the sketch's folder. This folder is opened by selecting \"Show\n Sketch Folder\" from the \"Sketch\" menu.
\n
\n Alternatively, the file can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows).
\n
\n All files loaded and saved by the Processing API use UTF-8 encoding.", + "description": "Writes the contents of a Table object to a file. By default, this file is\n saved to the sketch's folder. This folder is opened by selecting \"Show\n Sketch Folder\" from the \"Sketch\" menu.
\n
\n Alternatively, the file can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows).
\n
\n All files loaded and saved by the Processing API use UTF-8 encoding.", "syntax": [ "saveTable(table, filename)", "saveTable(table, filename, options)" diff --git a/content/references/translations/en/processing/saveXML_.json b/content/references/translations/en/processing/saveXML_.json index b3d7c7990..b6332b6a7 100644 --- a/content/references/translations/en/processing/saveXML_.json +++ b/content/references/translations/en/processing/saveXML_.json @@ -2,7 +2,7 @@ "brief": "Writes the contents of an XML object to a file", "related": ["XML", "loadXML_", "parseXML_"], "name": "saveXML()", - "description": "Writes the contents of an XML object to a file. By default, this file is\n saved to the sketch's folder. This folder is opened by selecting \"Show\n Sketch Folder\" from the \"Sketch\" menu.
\n
\n Alternatively, the file can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows).
\n
\n All files loaded and saved by the Processing API use UTF-8 encoding.", + "description": "Writes the contents of an XML object to a file. By default, this file is\n saved to the sketch's folder. This folder is opened by selecting \"Show\n Sketch Folder\" from the \"Sketch\" menu.
\n
\n Alternatively, the file can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows).
\n
\n All files loaded and saved by the Processing API use UTF-8 encoding.", "syntax": ["saveXML(xml, filename)"], "returns": "boolean", "type": "function", diff --git a/content/references/translations/en/processing/save_.json b/content/references/translations/en/processing/save_.json index 1b70e7a98..c86f10d04 100644 --- a/content/references/translations/en/processing/save_.json +++ b/content/references/translations/en/processing/save_.json @@ -2,7 +2,7 @@ "brief": "Saves an image from the display window", "related": ["saveFrame_", "createGraphics_"], "name": "save()", - "description": "Saves an image from the display window. Append a file extension to the name\n of the file, to indicate the file format to be used: either TIFF (.tif),\n TARGA (.tga), JPEG (.jpg), or PNG (.png). If no extension is included in\n the filename, the image will save in TIFF format and .tif will be\n added to the name. These files are saved to the sketch's folder, which may\n be opened by selecting \"Show sketch folder\" from the \"Sketch\" menu.\n Alternatively, the files can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows).
\n
\n All images saved from the main drawing window will be opaque. To save\n images without a background, use createGraphics().", + "description": "Saves an image from the display window. Append a file extension to the name\n of the file, to indicate the file format to be used: either TIFF (.tif),\n TARGA (.tga), JPEG (.jpg), or PNG (.png). If no extension is included in\n the filename, the image will save in TIFF format and .tif will be\n added to the name. These files are saved to the sketch's folder, which may\n be opened by selecting \"Show sketch folder\" from the \"Sketch\" menu.\n Alternatively, the files can be saved to any location on the computer by\n using an absolute path (something that starts with / on Unix and Linux, or\n a drive letter on Windows).
\n
\n All images saved from the main drawing window will be opaque. To save\n images without a background, use createGraphics().", "syntax": ["save(filename)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/scale_.json b/content/references/translations/en/processing/scale_.json index 17c585ff9..038cda361 100644 --- a/content/references/translations/en/processing/scale_.json +++ b/content/references/translations/en/processing/scale_.json @@ -10,7 +10,7 @@ "rotateZ_" ], "name": "scale()", - "description": "Increases or decreases the size of a shape by expanding and contracting\n vertices. Objects always scale from their relative origin to the coordinate\n system. Scale values are specified as decimal percentages. For example, the\n function call scale(2.0) increases the dimension of a shape by\n 200%.
\n
\n Transformations apply to everything that happens after and subsequent calls\n to the function multiply the effect. For example, calling scale(2.0)\n and then scale(1.5) is the same as scale(3.0). If\n scale() is called within draw(), the transformation is reset\n when the loop begins again. Using this function with the z parameter\n requires using P3D as a parameter for size(), as shown in the third\n example above. This function can be further controlled with\n pushMatrix() and popMatrix().", + "description": "Increases or decreases the size of a shape by expanding and contracting\n vertices. Objects always scale from their relative origin to the coordinate\n system. Scale values are specified as decimal percentages. For example, the\n function call scale(2.0) increases the dimension of a shape by\n 200%.
\n
\n Transformations apply to everything that happens after and subsequent calls\n to the function multiply the effect. For example, calling scale(2.0)\n and then scale(1.5) is the same as scale(3.0). If\n scale() is called within draw(), the transformation is reset\n when the loop begins again. Using this function with the z parameter\n requires using P3D as a parameter for size(), as shown in the third\n example above. This function can be further controlled with\n pushMatrix() and popMatrix().", "syntax": ["scale(s)", "scale(x, y)", "scale(x, y, z)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/second_.json b/content/references/translations/en/processing/second_.json index 2a3a1feff..d42f81d63 100644 --- a/content/references/translations/en/processing/second_.json +++ b/content/references/translations/en/processing/second_.json @@ -1,8 +1,8 @@ { - "brief": "Returns the current second as a value from 0 - 59", + "brief": "Returns the current second as a value from 0 to 59", "related": ["millis_", "minute_", "hour_", "day_", "month_", "year_"], "name": "second()", - "description": "Processing communicates with the clock on your computer. The\n second() function returns the current second as a value from 0 - 59.", + "description": "Processing communicates with the clock on your computer. The\n second() function returns the current second as a value from 0 to 59.", "syntax": ["second()"], "returns": "int", "type": "function", diff --git a/content/references/translations/en/processing/set_.json b/content/references/translations/en/processing/set_.json index 32a597618..4c0e724f4 100644 --- a/content/references/translations/en/processing/set_.json +++ b/content/references/translations/en/processing/set_.json @@ -2,7 +2,7 @@ "brief": "Writes a color to any pixel or writes an image into another", "related": ["get_", "pixels", "copy_"], "name": "set()", - "description": "Changes the color of any pixel or writes an image directly into the\n display window.
\n
\n The x and y parameters specify the pixel to change and the\n color parameter specifies the color value. The color parameter is\n affected by the current color mode (the default is RGB values from 0 to\n 255). When setting an image, the x and y parameters define\n the coordinates for the upper-left corner of the image, regardless of\n the current imageMode().\n

\n Setting the color of a single pixel with set(x, y) is easy, but\n not as fast as putting the data directly into pixels[]. The\n equivalent statement to set(x, y, #000000) using pixels[]\n is pixels[y*width+x] = #000000. See the reference for\n pixels[] for more information.", + "description": "Changes the color of any pixel or writes an image directly into the\n display window.
\n
\n The x and y parameters specify the pixel to change and the\n color parameter specifies the color value. The color parameter is\n affected by the current color mode (the default is RGB values from 0 to\n 255). When setting an image, the x and y parameters define\n the coordinates for the upper-left corner of the image, regardless of\n the current imageMode().\n

\n Setting the color of a single pixel with set(x, y) is easy, but\n not as fast as putting the data directly into pixels[]. The\n equivalent statement to set(x, y, #000000) using pixels[]\n is pixels[y*width+x] = #000000. See the reference for\n pixels[] for more information.", "syntax": ["set(x, y, c)", "set(x, y, img)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/settings_.json b/content/references/translations/en/processing/settings_.json index f46b0a07d..b49acab68 100644 --- a/content/references/translations/en/processing/settings_.json +++ b/content/references/translations/en/processing/settings_.json @@ -2,7 +2,7 @@ "brief": "Used when absolutely necessary to define the parameters to size()\n with a variable", "related": ["fullScreen_", "setup_", "size_", "smooth_"], "name": "settings()", - "description": "The settings() function is new with Processing 3.0.\n It's not needed in most sketches. It's only useful when it's\n absolutely necessary to define the parameters to size()\n with a variable. Alternately, the settings() function\n is necessary when using Processing code outside of the\n Processing Development Environment (PDE). For example, when\n using the Eclipse code editor, it's necessary to use\n settings() to define the size() and\n smooth() values for a sketch.
.\n

\n The settings() method runs before the sketch has been\n set up, so other Processing functions cannot be used at that\n point. For instance, do not use loadImage() inside settings().\n The settings() method runs \"passively\" to set a few variables,\n compared to the setup() command that call commands in\n the Processing API.", + "description": "The settings() function is new with Processing 3.0.\n It's not needed in most sketches. It's only useful when it's\n absolutely necessary to define the parameters to size()\n with a variable. Alternately, the settings() function\n is necessary when using Processing code outside the\n Processing Development Environment (PDE). For example, when\n using the Eclipse code editor, it's necessary to use\n settings() to define the size() and\n smooth() values for a sketch.
.\n

\n The settings() method runs before the sketch has been\n set up, so other Processing functions cannot be used at that\n point. For instance, do not use loadImage() inside settings().\n The settings() method runs \"passively\" to set a few variables,\n compared to the setup() command that call commands in\n the Processing API.", "syntax": ["settings()"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/setup_.json b/content/references/translations/en/processing/setup_.json index 16444b201..1fc1193d7 100644 --- a/content/references/translations/en/processing/setup_.json +++ b/content/references/translations/en/processing/setup_.json @@ -2,7 +2,7 @@ "brief": "The setup() function is called once when the program starts", "related": ["size_", "loop_", "noLoop_", "draw_"], "name": "setup()", - "description": "The setup() function is run once, when the program starts. It's used\n to define initial environment properties such as screen size and to load media\n such as images and fonts as the program starts. There can only be one\n setup() function for each program and it shouldn't be called again\n after its initial execution.
\n
\n If the sketch is a different dimension than the default, the size()\n function or fullScreen() function must be the first line in\n setup().
\n
\n Note: Variables declared within setup() are not accessible within\n other functions, including draw().", + "description": "The setup() function is run once, when the program starts. It's used\n to define initial environment properties such as screen size and to load media\n such as images and fonts as the program starts. There can only be one\n setup() function for each program, and it shouldn't be called again\n after its initial execution.
\n
\n If the sketch is a different dimension than the default, the size()\n function or fullScreen() function must be the first line in\n setup().
\n
\n Note: Variables declared within setup() are not accessible within\n other functions, including draw().", "syntax": ["setup()"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/shapeMode_.json b/content/references/translations/en/processing/shapeMode_.json index c0054a0d9..b4a3fce64 100644 --- a/content/references/translations/en/processing/shapeMode_.json +++ b/content/references/translations/en/processing/shapeMode_.json @@ -2,7 +2,7 @@ "brief": "Modifies the location from which shapes draw", "related": ["PShape", "shape_", "rectMode_"], "name": "shapeMode()", - "description": "Modifies the location from which shapes draw. The default mode is\n shapeMode(CORNER), which specifies the location to be the upper\n left corner of the shape and uses the third and fourth parameters of\n shape() to specify the width and height. The syntax\n shapeMode(CORNERS) uses the first and second parameters of\n shape() to set the location of one corner and uses the third and\n fourth parameters to set the opposite corner. The syntax\n shapeMode(CENTER) draws the shape from its center point and uses\n the third and forth parameters of shape() to specify the width\n and height. The parameter must be written in \"ALL CAPS\" because\n Processing is a case sensitive language.", + "description": "Modifies the location from which shapes draw. The default mode is\n shapeMode(CORNER), which specifies the location to be the upper\n left corner of the shape and uses the third and fourth parameters of\n shape() to specify the width and height. The syntax\n shapeMode(CORNERS) uses the first and second parameters of\n shape() to set the location of one corner and uses the third and\n fourth parameters to set the opposite corner. The syntax\n shapeMode(CENTER) draws the shape from its center point and uses\n the third and forth parameters of shape() to specify the width\n and height. The parameter must be written in \"ALL CAPS\" because\n Processing is a case-sensitive language.", "syntax": ["shapeMode(mode)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/size_.json b/content/references/translations/en/processing/size_.json index caf72b001..d0196a0e7 100644 --- a/content/references/translations/en/processing/size_.json +++ b/content/references/translations/en/processing/size_.json @@ -2,7 +2,7 @@ "brief": "Defines the dimension of the display window in units of pixels", "related": ["width", "height", "setup_", "settings_", "fullScreen_"], "name": "size()", - "description": "Defines the dimension of the display window width and height in units of\n pixels. In a program that has the setup() function, the\n size() function must be the first line of code inside\n setup(), and the setup() function must appear in the code tab\n with the same name as your sketch folder.
\n
\n The built-in variables width and height are set by the\n parameters passed to this function. For example, running size(640,\n 480) will assign 640 to the width variable and 480 to the height\n variable. If size() is not used, the window will be given a\n default size of 100 x 100 pixels.
\n
\n The size() function can only be used once inside a sketch, and it\n cannot be used for resizing.
\n
\n As of Processing 3, to run a sketch at the full dimensions of a screen, use\n the fullScreen() function, rather than the older way of using\n size(displayWidth, displayHeight).
\n
\n The maximum width and height is limited by your operating system, and is\n usually the width and height of your actual screen. On some machines it may\n simply be the number of pixels on your current screen, meaning that a\n screen of 800 x 600 could support size(1600, 300), since that is the\n same number of pixels. This varies widely, so you'll have to try different\n rendering modes and sizes until you get what you're looking for. If you\n need something larger, use createGraphics to create a non-visible\n drawing surface.
\n
\n The minimum width and height is around 100 pixels in each direction. This\n is the smallest that is supported across Windows, macOS, and Linux. We\n enforce the minimum size so that sketches will run identically on different\n machines.
\n The renderer parameter selects which rendering engine to use. For\n example, if you will be drawing 3D shapes, use P3D. In addition to\n the default renderer, other renderers are:
\n
\n P2D (Processing 2D): 2D graphics renderer that makes use of\n OpenGL-compatible graphics hardware.
\n
\n P3D (Processing 3D): 3D graphics renderer that makes use of\n OpenGL-compatible graphics hardware.
\n
\n FX2D (JavaFX 2D): A 2D renderer that uses JavaFX, which may be\n faster for some applications, but has some compatibility quirks.
\n PDF: The PDF renderer draws 2D graphics directly to an Acrobat PDF\n file. This produces excellent results when you need vector shapes for\n high-resolution output or printing. You must first use Import Library\n → PDF to make use of the library. More information can be found in the\n PDF library reference.
\n
\n SVG: The SVG renderer draws 2D graphics directly to an SVG file.\n This is great for importing into other vector programs or using for digital\n fabrication. You must first use Import Library → SVG Export to make\n use of the library.
\n
\n As of Processing 3.0, to use variables as the parameters to size()\n function, place the size() function within the settings()\n function (instead of setup()). There is more information about this\n on the settings() reference page.
\n
\n\n ", + "description": "Defines the dimension of the display window width and height in units of\n pixels. In a program that has the setup() function, the\n size() function must be the first line of code inside\n setup(), and the setup() function must appear in the code tab\n with the same name as your sketch folder.
\n
\n The built-in variables width and height are set by the\n parameters passed to this function. For example, running size(640,\n 480) will assign 640 to the width variable and 480 to the height\n variable. If size() is not used, the window will be given a\n default size of 100 x 100 pixels.
\n
\n The size() function can only be used once inside a sketch, and it\n cannot be used for resizing. Use windowResize() instead.
\n
\n To run a sketch that fills the screen, use the fullScreen() function,\n rather than using size(displayWidth, displayHeight).
\n
\n The renderer parameter selects which rendering engine to use. For\n example, if you will be drawing 3D shapes, use P3D. The default\n renderer is slower for some situations (for instance large or\n high-resolution displays) but generally has higher quality than the\n other renderers for 2D drawing.
\n
\n In addition to the default renderer, other renderers are:
\n
\n P2D (Processing 2D): 2D graphics renderer that makes use of\n OpenGL-compatible graphics hardware.
\n
\n P3D (Processing 3D): 3D graphics renderer that makes use of\n OpenGL-compatible graphics hardware.
\n
\n FX2D (JavaFX 2D): A 2D renderer that uses JavaFX, which may be\n faster for some applications, but has some compatibility quirks.\n Use \\u201cManage Libraries\\u201d to download and install the JavaFX library.
\n
\n PDF: The PDF renderer draws 2D graphics directly to an Acrobat PDF\n file. This produces excellent results when you need vector shapes for\n high-resolution output or printing. You must first use Import Library\n → PDF to make use of the library. More information can be found in the\n PDF library reference.
\n
\n SVG: The SVG renderer draws 2D graphics directly to an SVG file.\n This is great for importing into other vector programs or using for\n digital fabrication. It is not as feature-complete as other renderers.\n Like PDF, you must first use Import Library → SVG Export to\n make use the SVG library.
\n
\n As of Processing 3.0, to use variables as the parameters to size()\n function, place the size() function within the settings()\n function (instead of setup()). There is more information about this\n on the settings() reference page.
\n
\n The maximum width and height is limited by your operating system, and is\n usually the width and height of your actual screen. On some machines it may\n simply be the number of pixels on your current screen, meaning that a\n screen of 800 x 600 could support size(1600, 300), since that is the\n same number of pixels. This varies widely, so you'll have to try different\n rendering modes and sizes until you get what you're looking for. If you\n need something larger, use createGraphics to create a non-visible\n drawing surface.
\n
\n The minimum width and height is around 100 pixels in each direction. This\n is the smallest that is supported across Windows, macOS, and Linux. We\n enforce the minimum size so that sketches will run identically on different\n machines.
\n
", "syntax": ["size(width, height)", "size(width, height, renderer)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/smooth_.json b/content/references/translations/en/processing/smooth_.json index 06ecb8718..1f1959642 100644 --- a/content/references/translations/en/processing/smooth_.json +++ b/content/references/translations/en/processing/smooth_.json @@ -2,7 +2,7 @@ "brief": "Draws all geometry with smooth (anti-aliased) edges", "related": [], "name": "smooth()", - "description": "Draws all geometry with smooth (anti-aliased) edges.\n This behavior is the default, so smooth() only needs\n to be used when a program needs to set the smoothing\n in a different way. The level parameter increases\n the amount of smoothness. This is the level of over\n sampling applied to the graphics buffer.\n\n With the P2D and P3D renderers, smooth(2) is the\n default, this is called \"2x anti-aliasing.\" The code\n smooth(4) is used for 4x anti-aliasing and smooth(8)\n is specified for \"8x anti-aliasing.\" The maximum\n anti-aliasing level is determined by the hardware of\n the machine that is running the software, so smooth(4)\n and smooth(8) will not work with every computer.\n\n The default renderer uses smooth(3) by default. This\n is bicubic smoothing. The other option for the default\n renderer is smooth(2), which is bilinear smoothing.\n\n With Processing 3.0, smooth() is different than before.\n It was common to use smooth() and noSmooth() to turn on\n and off antialiasing within a sketch. Now, because of\n how the software has changed, smooth() can only be set\n once within a sketch. It can be used either at the top\n of a sketch without a setup(), or after the size()\n function when used in a sketch with setup(). The\n noSmooth() function also follows the same rules.\n\n When smooth() is used with a PGraphics object, it should\n be run right after the object is created with\n createGraphics(), as shown in the Reference in the third\n example.", + "description": "Draws all geometry with smooth (anti-aliased) edges.\n This behavior is the default, so smooth() only needs\n to be used when a program needs to set the smoothing\n in a different way. The level parameter increases\n the amount of smoothness. This is the level of over\n sampling applied to the graphics buffer.\n

\n With the P2D and P3D renderers, smooth(2) is the\n default, this is called \"2x anti-aliasing.\" The code\n smooth(4) is used for 4x anti-aliasing and smooth(8)\n is specified for \"8x anti-aliasing.\" The maximum\n anti-aliasing level is determined by the hardware of\n the machine that is running the software, so smooth(4)\n and smooth(8) will not work with every computer.\n

\n The default renderer uses smooth(3) by default. This\n is bicubic smoothing. The other option for the default\n renderer is smooth(2), which is bilinear smoothing.\n

\n With Processing 3.0, smooth() is handled differently\n than in earlier releases. In 2.x and earlier, it was possible\n to use smooth() and noSmooth() to turn on\n and off antialiasing within a sketch. Now, because of\n how the software has changed, smooth() can only be set\n once within a sketch. It can be used either at the top\n of a sketch without a setup(), or after the size()\n function when used in a sketch with setup(). The\n noSmooth() function also follows the same rules.\n

\n When smooth() is used with a PGraphics object, it should\n be run right after the object is created with\n createGraphics(), as shown in the Reference in the third\n example.", "syntax": ["smooth(level)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/sphereDetail_.json b/content/references/translations/en/processing/sphereDetail_.json index 09538e2fd..630b87346 100644 --- a/content/references/translations/en/processing/sphereDetail_.json +++ b/content/references/translations/en/processing/sphereDetail_.json @@ -2,7 +2,7 @@ "brief": "Controls the detail used to render a sphere by adjusting the number of\n vertices of the sphere mesh", "related": ["sphere_"], "name": "sphereDetail()", - "description": "Controls the detail used to render a sphere by adjusting the number of\n vertices of the sphere mesh. The default resolution is 30, which creates\n a fairly detailed sphere definition with vertices every 360/30 = 12\n degrees. If you're going to render a great number of spheres per frame,\n it is advised to reduce the level of detail using this function. The\n setting stays active until sphereDetail() is called again with a\n new parameter and so should not be called prior to every\n sphere() statement, unless you wish to render spheres with\n different settings, e.g. using less detail for smaller spheres or ones\n further away from the camera. To control the detail of the horizontal\n and vertical resolution independently, use the version of the functions\n with two parameters.\n\n\n ", + "description": "Controls the detail used to render a sphere by adjusting the number of\n vertices of the sphere mesh. The default resolution is 30, which creates\n a fairly detailed sphere definition with vertices every 360/30 = 12\n degrees. If you're going to render a great number of spheres per frame,\n it is advised to reduce the level of detail using this function. The\n setting stays active until sphereDetail() is called again with a\n new parameter and so should not be called prior to every\n sphere() statement, unless you wish to render spheres with\n different settings, e.g. using less detail for smaller spheres or ones\n further away from the camera. To control the detail of the horizontal\n and vertical resolution independently, use the version of the functions\n with two parameters.\n\n ", "syntax": ["sphereDetail(res)", "sphereDetail(ures, vres)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/sphere_.json b/content/references/translations/en/processing/sphere_.json index ad113e84e..40b7d1093 100644 --- a/content/references/translations/en/processing/sphere_.json +++ b/content/references/translations/en/processing/sphere_.json @@ -2,7 +2,7 @@ "brief": "A sphere is a hollow ball made from tessellated triangles", "related": ["sphereDetail_"], "name": "sphere()", - "description": "A sphere is a hollow ball made from tessellated triangles.\n\n\n ", + "description": "A sphere is a hollow ball made from tessellated triangles.\n\n ", "syntax": ["sphere(r)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/splice_.json b/content/references/translations/en/processing/splice_.json index d0b2a0f20..b65fb09cf 100644 --- a/content/references/translations/en/processing/splice_.json +++ b/content/references/translations/en/processing/splice_.json @@ -2,7 +2,7 @@ "brief": "Inserts a value or array of values into an existing array", "related": ["concat_", "subset_"], "name": "splice()", - "description": "Inserts a value or an array of values into an existing array. The first two\n parameters must be arrays of the same datatype. The first parameter\n specifies the initial array to be modified, and the second parameter\n defines the data to be inserted. The third parameter is an index value\n which specifies the array position from which to insert data. (Remember\n that array index numbering starts at zero, so the first position is 0, the\n second position is 1, and so on.)
\n
\n When splicing an array of objects, the data returned from the function must\n be cast to the object array's data type. For example: SomeClass[] items\n = (SomeClass[]) splice(array1, array2, index)", + "description": "Inserts a value or an array of values into an existing array. The first two\n parameters must be arrays of the same datatype. The first parameter\n specifies the initial array to be modified, and the second parameter\n defines the data to be inserted. The third parameter is an index value\n which specifies the array position from which to insert data. (Remember\n that array index numbering starts at zero, so the first position is 0, the\n second position is 1, and so on.)
\n
\n When splicing an array of objects, the data returned from the function must\n be cast to the object array's data type. For example: SomeClass[] items\n = (SomeClass[]) splice(array1, array2, index)", "syntax": ["splice(list, value, index)"], "returns": "boolean[], byte[], char[], int[], float[], String[], or Object", "type": "function", diff --git a/content/references/translations/en/processing/splitTokens_.json b/content/references/translations/en/processing/splitTokens_.json index ef3ff60b6..d90e88f10 100644 --- a/content/references/translations/en/processing/splitTokens_.json +++ b/content/references/translations/en/processing/splitTokens_.json @@ -2,7 +2,7 @@ "brief": "The splitTokens() function splits a String at one or many\n character \"tokens\"", "related": ["split_", "join_", "trim_"], "name": "splitTokens()", - "description": "The splitTokens() function splits a String at one or many character\n delimiters or \"tokens\". The delim parameter specifies the character\n or characters to be used as a boundary.
\n
\n If no delim characters are specified, any whitespace character is\n used to split. Whitespace characters include tab (\t), line feed\n (\n), carriage return (\r), form feed (\f), and space.
\n
\n After using this function to parse incoming data, it is common to convert\n the data from Strings to integers or floats by using the datatype\n conversion functions int() and float().", + "description": "The splitTokens() function splits a String at one or many character\n delimiters or \"tokens\". The delim parameter specifies the character\n or characters to be used as a boundary.
\n
\n If no delim characters are specified, any whitespace character is\n used to split. Whitespace characters include tab (\t), line feed\n (\n), carriage return (\r), form feed (\f), and space.
\n
\n After using this function to parse incoming data, it is common to convert\n the data from Strings to integers or floats by using the datatype\n conversion functions int() and float().", "syntax": ["splitTokens(value)", "splitTokens(value, delim)"], "returns": "String[]", "type": "function", diff --git a/content/references/translations/en/processing/split_.json b/content/references/translations/en/processing/split_.json index 8ac58ffde..f8a6da614 100644 --- a/content/references/translations/en/processing/split_.json +++ b/content/references/translations/en/processing/split_.json @@ -2,7 +2,7 @@ "brief": "The split() function breaks a string into pieces using a\n character or string as the divider", "related": [], "name": "split()", - "description": "The split() function breaks a String into pieces using a character\n or string as the delimiter. The delim parameter specifies the\n character or characters that mark the boundaries between each piece. A\n String[] array is returned that contains each of the pieces.
\n
\n If the result is a set of numbers, you can convert the String[] array to a\n float[] or int[] array using the datatype conversion functions int()\n and float(). (See the second example above.)
\n
\n The splitTokens() function works in a similar fashion, except that\n it splits using a range of characters instead of a specific character or\n sequence. ", + "description": "The split() function breaks a String into pieces using a character\n or string as the delimiter. The delim parameter specifies the\n character or characters that mark the boundaries between each piece. A\n String[] array is returned that contains each of the pieces.
\n
\n If the result is a set of numbers, you can convert the String[] array to a\n float[] or int[] array using the datatype conversion functions int()\n and float(). (See the second example above.)
\n
\n The splitTokens() function works in a similar fashion, except that\n it splits using a range of characters instead of a specific character or\n sequence. ", "syntax": ["split(value, delim)"], "returns": "String[]", "type": "function", diff --git a/content/references/translations/en/processing/spotLight_.json b/content/references/translations/en/processing/spotLight_.json index b791aa907..3e9c5bdd2 100644 --- a/content/references/translations/en/processing/spotLight_.json +++ b/content/references/translations/en/processing/spotLight_.json @@ -1,8 +1,8 @@ { - "brief": "Adds a spot light", + "brief": "Adds a spotlight", "related": ["lights_", "directionalLight_", "pointLight_", "ambientLight_"], "name": "spotLight()", - "description": "Adds a spot light. Lights need to be included in the draw() to remain\n persistent in a looping program. Placing them in the setup() of a\n looping program will cause them to only have an effect the first time through\n the loop. The v1, v2, and v3 parameters are interpreted\n as either RGB or HSB values, depending on the current color mode. The\n x, y, and z parameters specify the position of the light\n and nx, ny, nz specify the direction of light. The\n angle parameter affects angle of the spotlight cone, while\n concentration sets the bias of light focusing toward the center of\n that cone.", + "description": "Adds a spotlight. Lights need to be included in the draw() to remain\n persistent in a looping program. Placing them in the setup() of a\n looping program will cause them to only have an effect the first time through\n the loop. The v1, v2, and v3 parameters are interpreted\n as either RGB or HSB values, depending on the current color mode. The\n x, y, and z parameters specify the position of the light\n and nx, ny, nz specify the direction of light. The\n angle parameter affects angle of the spotlight cone, while\n concentration sets the bias of light focusing toward the center of\n that cone.", "syntax": [ "spotLight(v1, v2, v3, x, y, z, nx, ny, nz, angle, concentration)" ], @@ -43,17 +43,17 @@ }, { "name": "nx", - "description": "direction along the x axis", + "description": "direction along the x-axis", "type": ["float"] }, { "name": "ny", - "description": "direction along the y axis", + "description": "direction along the y-axis", "type": ["float"] }, { "name": "nz", - "description": "direction along the z axis", + "description": "direction along the z-axis", "type": ["float"] }, { diff --git a/content/references/translations/en/processing/strokeCap_.json b/content/references/translations/en/processing/strokeCap_.json index 8b58cdd63..ac77c2bde 100644 --- a/content/references/translations/en/processing/strokeCap_.json +++ b/content/references/translations/en/processing/strokeCap_.json @@ -2,7 +2,7 @@ "brief": "Sets the style for rendering line endings", "related": ["stroke_", "strokeWeight_", "strokeJoin_", "size_"], "name": "strokeCap()", - "description": "Sets the style for rendering line endings. These ends are either squared,\n extended, or rounded, each of which specified with the corresponding\n parameters: SQUARE, PROJECT, and ROUND. The default cap is ROUND.
\n
\n To make point() appear square, use strokeCap(PROJECT). Using\n strokeCap(SQUARE) (no cap) causes points to become invisible.", + "description": "Sets the style for rendering line endings. These ends are either squared,\n extended, or rounded, each of which specified with the corresponding\n parameters: SQUARE, PROJECT, and ROUND. The default cap is ROUND.
\n
\n To make point() appear square, use strokeCap(PROJECT). Using\n strokeCap(SQUARE) (no cap) causes points to become invisible.", "syntax": ["strokeCap(cap)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/strokeWeight_.json b/content/references/translations/en/processing/strokeWeight_.json index 347788c62..66bae8b7e 100644 --- a/content/references/translations/en/processing/strokeWeight_.json +++ b/content/references/translations/en/processing/strokeWeight_.json @@ -2,7 +2,7 @@ "brief": "Sets the width of the stroke used for lines, points, and the border\n around shapes", "related": ["stroke_", "strokeJoin_", "strokeCap_"], "name": "strokeWeight()", - "description": "Sets the width of the stroke used for lines, points, and the border around\n shapes. All widths are set in units of pixels.
\n
\n Using point() with strokeWeight(1) or smaller may draw nothing to the screen,\n depending on the graphics settings of the computer. Workarounds include\n setting the pixel using set() or drawing the point using either\n circle() or square().", + "description": "Sets the width of the stroke used for lines, points, and the border around\n shapes. All widths are set in units of pixels.
\n
\n Using point() with strokeWeight(1) or smaller may draw nothing to the screen,\n depending on the graphics settings of the computer. Workarounds include\n setting the pixel using set() or drawing the point using either\n circle() or square().", "syntax": ["strokeWeight(weight)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/stroke_.json b/content/references/translations/en/processing/stroke_.json index 06dae59d4..a0d2325da 100644 --- a/content/references/translations/en/processing/stroke_.json +++ b/content/references/translations/en/processing/stroke_.json @@ -12,7 +12,7 @@ "colorMode_" ], "name": "stroke()", - "description": "Sets the color used to draw lines and borders around shapes. This color is\n either specified in terms of the RGB or HSB color depending on the current\n colorMode(). The default color space is RGB, with each value in the\n range from 0 to 255.
\n
\n When using hexadecimal notation to specify a color, use \"#\" or\n \"0x\" before the values (e.g., #CCFFAA or 0xFFCCFFAA).\n The # syntax uses six digits to specify a color (just as colors are\n typically specified in HTML and CSS). When using the hexadecimal notation\n starting with \"0x\", the hexadecimal value must be specified with eight\n characters; the first two characters define the alpha component, and the\n remainder define the red, green, and blue components.
\n
\n The value for the gray parameter must be less than or equal to the current\n maximum value as specified by colorMode(). The default maximum value\n is 255.
\n
\n When drawing in 2D with the default renderer, you may need\n hint(ENABLE_STROKE_PURE) to improve drawing quality (at the expense of\n performance). See the hint() documentation for more details.", + "description": "Sets the color used to draw lines and borders around shapes. This color is\n either specified in terms of the RGB or HSB color depending on the current\n colorMode(). The default color space is RGB, with each value in the\n range from 0 to 255.
\n
\n When using hexadecimal notation to specify a color, use \"#\" or\n \"0x\" before the values (e.g., #CCFFAA or 0xFFCCFFAA).\n The # syntax uses six digits to specify a color (just as colors are\n typically specified in HTML and CSS). When using the hexadecimal notation\n starting with \"0x\", the hexadecimal value must be specified with eight\n characters; the first two characters define the alpha component, and the\n remainder define the red, green, and blue components.
\n
\n The value for the gray parameter must be less than or equal to the current\n maximum value as specified by colorMode(). The default maximum value\n is 255.
\n
\n When drawing in 2D with the default renderer, you may need\n hint(ENABLE_STROKE_PURE) to improve drawing quality (at the expense of\n performance). See the hint() documentation for more details.", "syntax": [ "stroke(rgb)", "stroke(rgb, alpha)", diff --git a/content/references/translations/en/processing/subset_.json b/content/references/translations/en/processing/subset_.json index 4ba67107c..b2b4a47b9 100644 --- a/content/references/translations/en/processing/subset_.json +++ b/content/references/translations/en/processing/subset_.json @@ -2,7 +2,7 @@ "brief": "Extracts an array of elements from an existing array", "related": ["splice_"], "name": "subset()", - "description": "Extracts an array of elements from an existing array. The list\n parameter defines the array from which the elements will be copied, and the\n start and count parameters specify which elements to extract.\n If no count is given, elements will be extracted from the\n start to the end of the array. When specifying the start,\n remember that the first array element is 0. This function does not change\n the source array.
\n
\n When using an array of objects, the data returned from the function must be\n cast to the object array's data type. For example: SomeClass[] items =\n (SomeClass[]) subset(originalArray, 0, 4)", + "description": "Extracts an array of elements from an existing array. The list\n parameter defines the array from which the elements will be copied, and the\n start and count parameters specify which elements to extract.\n If no count is given, elements will be extracted from the\n start to the end of the array. When specifying the start,\n remember that the first array element is 0. This function does not change\n the source array.
\n
\n When using an array of objects, the data returned from the function must be\n cast to the object array's data type. For example: SomeClass[] items =\n (SomeClass[]) subset(originalArray, 0, 4)", "syntax": ["subset(list, start)", "subset(list, start, count)"], "returns": "boolean[], byte[], char[], int[], long[], float[], double[], String[], or Object", "type": "function", diff --git a/content/references/translations/en/processing/subtractassign.json b/content/references/translations/en/processing/subtractassign.json index adc8560f4..5286aece6 100644 --- a/content/references/translations/en/processing/subtractassign.json +++ b/content/references/translations/en/processing/subtractassign.json @@ -10,6 +10,10 @@ "subcategory": "Operators", "parameters": [ { "name": "var", "description": "int or float", "type": [] }, - { "name": "value", "description": "any numerical value the same datatype as var", "type": [] } + { + "name": "value", + "description": "any numerical value the same datatype as var", + "type": [] + } ] } diff --git a/content/references/translations/en/processing/textAlign_.json b/content/references/translations/en/processing/textAlign_.json index a4e713b4d..0c7a609a9 100644 --- a/content/references/translations/en/processing/textAlign_.json +++ b/content/references/translations/en/processing/textAlign_.json @@ -9,7 +9,7 @@ "textDescent_" ], "name": "textAlign()", - "description": "Sets the current alignment for drawing text. The parameters LEFT, CENTER, and\n RIGHT set the display characteristics of the letters in relation to the\n values for the x and y parameters of the text()\n function.
\n
\n An optional second parameter can be used to vertically align the text.\n BASELINE is the default, and the vertical alignment will be reset to BASELINE\n if the second parameter is not used. The TOP and CENTER parameters are\n straightforward. The BOTTOM parameter offsets the line based on the current\n textDescent(). For multiple lines, the final line will be aligned to\n the bottom, with the previous lines appearing above it.
\n
\n When using text() with width and height parameters, BASELINE is\n ignored, and treated as TOP. (Otherwise, text would by default draw outside\n the box, since BASELINE is the default setting. BASELINE is not a useful\n drawing mode for text drawn in a rectangle.)
\n
\n The vertical alignment is based on the value of textAscent(), which\n many fonts do not specify correctly. It may be necessary to use a hack and\n offset by a few pixels by hand so that the offset looks correct. To do this\n as less of a hack, use some percentage of textAscent() or\n textDescent() so that the hack works even if you change the size of\n the font.", + "description": "Sets the current alignment for drawing text. The parameters LEFT, CENTER, and\n RIGHT set the display characteristics of the letters in relation to the\n values for the x and y parameters of the text()\n function.
\n
\n An optional second parameter can be used to vertically align the text.\n BASELINE is the default, and the vertical alignment will be reset to BASELINE\n if the second parameter is not used. The TOP and CENTER parameters are\n straightforward. The BOTTOM parameter offsets the line based on the current\n textDescent(). For multiple lines, the final line will be aligned to\n the bottom, with the previous lines appearing above it.
\n
\n When using text() with width and height parameters, BASELINE is\n ignored, and treated as TOP. (Otherwise, text would by default draw outside\n the box, since BASELINE is the default setting. BASELINE is not a useful\n drawing mode for text drawn in a rectangle.)
\n
\n The vertical alignment is based on the value of textAscent(), which\n many fonts do not specify correctly. It may be necessary to use a hack and\n offset by a few pixels by hand so that the offset looks correct. To do this\n as less of a hack, use some percentage of textAscent() or\n textDescent() so that the hack works even if you change the size of\n the font.", "syntax": ["textAlign(alignX)", "textAlign(alignX, alignY)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/textFont_.json b/content/references/translations/en/processing/textFont_.json index e74912ddf..16484571d 100644 --- a/content/references/translations/en/processing/textFont_.json +++ b/content/references/translations/en/processing/textFont_.json @@ -2,7 +2,7 @@ "brief": "Sets the current font that will be drawn with the text()\n function", "related": ["createFont_", "loadFont_", "PFont", "text_", "textSize_"], "name": "textFont()", - "description": "Sets the current font that will be drawn with the text() function.\n Fonts must be created for Processing with createFont() or loaded with\n loadFont() before they can be used. The font set through\n textFont() will be used in all subsequent calls to the text()\n function. If no size parameter is specified, the font size defaults to\n the original size (the size in which it was created with the \"Create Font...\"\n tool) overriding any previous calls to textFont() or\n textSize().
\n
\n When fonts are rendered as an image texture (as is the case with the P2D and\n P3D renderers as well as with loadFont() and vlw files), you should\n create fonts at the sizes that will be used most commonly. Using\n textFont() without the size parameter will result in the cleanest\n type.
\n
", + "description": "Sets the current font that will be drawn with the text() function.\n Fonts must be created for Processing with createFont() or loaded with\n loadFont() before they can be used. The font set through\n textFont() will be used in all subsequent calls to the text()\n function. If no size parameter is specified, the font size defaults to\n the original size (the size in which it was created with the \"Create Font...\"\n tool) overriding any previous calls to textFont() or\n textSize().
\n
\n When fonts are rendered as an image texture (as is the case with the P2D and\n P3D renderers as well as with loadFont() and vlw files), you should\n create fonts at the sizes that will be used most commonly. Using\n textFont() without the size parameter will result in the cleanest\n type.
\n
", "syntax": ["textFont(which)", "textFont(which, size)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/textMode_.json b/content/references/translations/en/processing/textMode_.json index 9a523f284..ec598a400 100644 --- a/content/references/translations/en/processing/textMode_.json +++ b/content/references/translations/en/processing/textMode_.json @@ -2,7 +2,7 @@ "brief": "Sets the way text draws to the screen", "related": ["loadFont_", "text_", "textFont_", "beginRaw_", "createFont_"], "name": "textMode()", - "description": "Sets the way text draws to the screen, either as texture maps or as vector\n geometry. The default textMode(MODEL), uses textures to render the\n fonts. The textMode(SHAPE) mode draws text using the glyph outlines of\n individual characters rather than as textures. This mode is only supported\n with the PDF and P3D renderer settings. With the PDF\n renderer, you must call textMode(SHAPE) before any other drawing\n occurs. If the outlines are not available, then textMode(SHAPE) will\n be ignored and textMode(MODEL) will be used instead.
\n
\n The textMode(SHAPE) option in P3D can be combined with\n beginRaw() to write vector-accurate text to 2D and 3D output files,\n for instance DXF or PDF. The SHAPE mode is not currently\n optimized for P3D, so if recording shape data, use\n textMode(MODEL) until you're ready to capture the geometry with\n beginRaw().", + "description": "Sets the way text draws to the screen, either as texture maps or as vector\n geometry. The default textMode(MODEL), uses textures to render the\n fonts. The textMode(SHAPE) mode draws text using the glyph outlines of\n individual characters rather than as textures. This mode is only supported\n with the PDF and P3D renderer settings. With the PDF\n renderer, you must call textMode(SHAPE) before any other drawing\n occurs. If the outlines are not available, then textMode(SHAPE) will\n be ignored and textMode(MODEL) will be used instead.
\n
\n The textMode(SHAPE) option in P3D can be combined with\n beginRaw() to write vector-accurate text to 2D and 3D output files,\n for instance DXF or PDF. The SHAPE mode is not currently\n optimized for P3D, so if recording shape data, use\n textMode(MODEL) until you're ready to capture the geometry with\n beginRaw().", "syntax": ["textMode(mode)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/text_.json b/content/references/translations/en/processing/text_.json index e37a99e9e..f002650b9 100644 --- a/content/references/translations/en/processing/text_.json +++ b/content/references/translations/en/processing/text_.json @@ -14,7 +14,7 @@ "String_" ], "name": "text()", - "description": "Draws text to the screen. Displays the information specified in the first\n parameter on the screen in the position specified by the additional\n parameters. A default font will be used unless a font is set with the\n textFont() function and a default size will be used unless a font is\n set with textSize(). Change the color of the text with the\n fill() function. The text displays in relation to the\n textAlign() function, which gives the option to draw to the left,\n right, and center of the coordinates.
\n
\n The x2 and y2 parameters define a rectangular area to display\n within and may only be used with string data. When these parameters are\n specified, they are interpreted based on the current rectMode()\n setting. Text that does not fit completely within the rectangle specified\n will not be drawn to the screen.
\n
\n Note that Processing now lets you call text() without first specifying\n a PFont with textFont(). In that case, a generic sans-serif font will\n be used instead. (See the third example above.)", + "description": "Draws text to the screen. Displays the information specified in the first\n parameter on the screen in the position specified by the additional\n parameters. A default font will be used unless a font is set with the\n textFont() function and a default size will be used unless a font is\n set with textSize(). Change the color of the text with the\n fill() function. The text displays in relation to the\n textAlign() function, which gives the option to draw to the left,\n right, and center of the coordinates.
\n
\n The x2 and y2 parameters define a rectangular area to display\n within and may only be used with string data. When these parameters are\n specified, they are interpreted based on the current rectMode()\n setting. Text that does not fit completely within the rectangle specified\n will not be drawn to the screen.
\n
\n Note that Processing now lets you call text() without first specifying\n a PFont with textFont(). In that case, a generic sans-serif font will\n be used instead. (See the third example above.)", "syntax": [ "text(c, x, y)", "text(c, x, y, z)", diff --git a/content/references/translations/en/processing/textureMode_.json b/content/references/translations/en/processing/textureMode_.json index 14c19a385..38dff9b16 100644 --- a/content/references/translations/en/processing/textureMode_.json +++ b/content/references/translations/en/processing/textureMode_.json @@ -2,7 +2,7 @@ "brief": "Sets the coordinate space for texture mapping", "related": ["texture_", "textureWrap_"], "name": "textureMode()", - "description": "Sets the coordinate space for texture mapping. The default mode is\n IMAGE, which refers to the actual coordinates of the image.\n NORMAL refers to a normalized space of values ranging from 0 to 1.\n This function only works with the P2D and P3D renderers.
\n
\n With IMAGE, if an image is 100 x 200 pixels, mapping the image onto\n the entire size of a quad would require the points (0,0) (100, 0) (100,200)\n (0,200). The same mapping in NORMAL is (0,0) (1,0) (1,1) (0,1).", + "description": "Sets the coordinate space for texture mapping. The default mode is\n IMAGE, which refers to the actual coordinates of the image.\n NORMAL refers to a normalized space of values ranging from 0 to 1.\n This function only works with the P2D and P3D renderers.
\n
\n With IMAGE, if an image is 100 x 200 pixels, mapping the image onto\n the entire size of a quad would require the points (0,0) (100, 0) (100,200)\n (0,200). The same mapping in NORMAL is (0,0) (1,0) (1,1) (0,1).", "syntax": ["textureMode(mode)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/texture_.json b/content/references/translations/en/processing/texture_.json index e3c916273..2082d20fd 100644 --- a/content/references/translations/en/processing/texture_.json +++ b/content/references/translations/en/processing/texture_.json @@ -8,7 +8,7 @@ "vertex_" ], "name": "texture()", - "description": "Sets a texture to be applied to vertex points. The texture() function\n must be called between beginShape() and endShape() and before\n any calls to vertex(). This function only works with the P2D and P3D\n renderers.
\n
\n When textures are in use, the fill color is ignored. Instead, use\n tint() to specify the color of the texture as it is applied to the\n shape.", + "description": "Sets a texture to be applied to vertex points. The texture() function\n must be called between beginShape() and endShape() and before\n any calls to vertex(). This function only works with the P2D and P3D\n renderers.\n

\n When textures are in use, the fill color is ignored. Instead, use\n tint() to specify the color of the texture as it is applied to the\n shape.", "syntax": ["texture(image)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/thread_.json b/content/references/translations/en/processing/thread_.json index 057b76b22..e9f9daacf 100644 --- a/content/references/translations/en/processing/thread_.json +++ b/content/references/translations/en/processing/thread_.json @@ -2,7 +2,7 @@ "brief": "Launch a new thread and call the specified function from that new\n thread", "related": ["setup_", "draw_", "loop_", "noLoop_"], "name": "thread()", - "description": "Processing sketches follow a specific sequence of steps: setup()\n first, followed by draw() over and over and over again in a loop. A\n thread is also a series of steps with a beginning, a middle, and an end. A\n Processing sketch is a single thread, often referred to as the \"Animation\"\n thread. Other threads' sequences, however, can run independently of the\n main animation loop. In fact, you can launch any number of threads at one\n time, and they will all run concurrently.
\n
\n You cannot draw to the screen from a function called by thread().\n Because it runs independently, the code will not be synchronized to the\n animation thread, causing strange or at least inconsistent results. Use\n thread() to load files or do other tasks that take time. When the\n task is finished, set a variable that indicates the task is complete, and\n check that from inside your draw() method.
\n
\n Processing uses threads quite often, such as with library functions like\n captureEvent() and movieEvent(). These functions are\n triggered by a different thread running behind the scenes, and they alert\n Processing whenever they have something to report. This is useful when you\n need to perform a task that takes too long and would slow down the main\n animation's frame rate, such as grabbing data from the network. If a\n separate thread gets stuck or has an error, the entire program won't grind\n to a halt, since the error only stops that individual thread.
\n
\n Writing your own thread can be a complex endeavor that involves extending\n the Java Thread\n class. However, the thread() method is a quick and dirty way to\n implement a simple thread in Processing. By passing in a String that\n matches the name of a function declared elsewhere in the sketch, Processing\n will execute that function in a separate thread.", + "description": "Processing sketches follow a specific sequence of steps: setup()\n first, followed by draw() over and over and over again in a loop. A\n thread is also a series of steps with a beginning, a middle, and an end. A\n Processing sketch is a single thread, often referred to as the \"Animation\"\n thread. Other threads' sequences, however, can run independently of the\n main animation loop. In fact, you can launch any number of threads at one\n time, and they will all run concurrently.
\n
\n You cannot draw to the screen from a function called by thread().\n Because it runs independently, the code will not be synchronized to the\n animation thread, causing strange or at least inconsistent results. Use\n thread() to load files or do other tasks that take time. When the\n task is finished, set a variable that indicates the task is complete, and\n check that from inside your draw() method.
\n
\n Processing uses threads quite often, such as with library functions like\n captureEvent() and movieEvent(). These functions are\n triggered by a different thread running behind the scenes, and they alert\n Processing whenever they have something to report. This is useful when you\n need to perform a task that takes too long and would slow down the main\n animation's frame rate, such as grabbing data from the network. If a\n separate thread gets stuck or has an error, the entire program won't grind\n to a halt, since the error only stops that individual thread.
\n
\n Writing your own thread can be a complex endeavor that involves extending\n the Java Thread\n class. However, the thread() method is a quick and dirty way to\n implement a simple thread in Processing. By passing in a String that\n matches the name of a function declared elsewhere in the sketch, Processing\n will execute that function in a separate thread.", "syntax": ["thread(name)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/tint_.json b/content/references/translations/en/processing/tint_.json index d6e9a38cf..f27e71f78 100644 --- a/content/references/translations/en/processing/tint_.json +++ b/content/references/translations/en/processing/tint_.json @@ -2,7 +2,7 @@ "brief": "Sets the fill value for displaying images", "related": ["noTint_", "image_"], "name": "tint()", - "description": "Sets the fill value for displaying images. Images can be tinted to specified\n colors or made transparent by including an alpha value.
\n
\n To apply transparency to an image without affecting its color, use white as\n the tint color and specify an alpha value. For instance, tint(255,\n 128) will make an image 50% transparent (assuming the default alpha range\n of 0-255, which can be changed with colorMode()).
\n
\n When using hexadecimal notation to specify a color, use \"#\" or\n \"0x\" before the values (e.g., #CCFFAA or 0xFFCCFFAA).\n The # syntax uses six digits to specify a color (just as colors are\n typically specified in HTML and CSS). When using the hexadecimal notation\n starting with \"0x\", the hexadecimal value must be specified with eight\n characters; the first two characters define the alpha component, and the\n remainder define the red, green, and blue components.
\n
\n The value for the gray parameter must be less than or equal to the current\n maximum value as specified by colorMode(). The default maximum value\n is 255.
\n
\n The tint() function is also used to control the coloring of textures\n in 3D.", + "description": "Sets the fill value for displaying images. Images can be tinted to specified\n colors or made transparent by including an alpha value.
\n
\n To apply transparency to an image without affecting its color, use white as\n the tint color and specify an alpha value. For instance, tint(255,\n 128) will make an image 50% transparent (assuming the default alpha range\n of 0-255, which can be changed with colorMode()).
\n
\n When using hexadecimal notation to specify a color, use \"#\" or\n \"0x\" before the values (e.g., #CCFFAA or 0xFFCCFFAA).\n The # syntax uses six digits to specify a color (just as colors are\n typically specified in HTML and CSS). When using the hexadecimal notation\n starting with \"0x\", the hexadecimal value must be specified with eight\n characters; the first two characters define the alpha component, and the\n remainder define the red, green, and blue components.
\n
\n The value for the gray parameter must be less than or equal to the current\n maximum value as specified by colorMode(). The default maximum value\n is 255.
\n
\n The tint() function is also used to control the coloring of textures\n in 3D.", "syntax": [ "tint(rgb)", "tint(rgb, alpha)", diff --git a/content/references/translations/en/processing/translate_.json b/content/references/translations/en/processing/translate_.json index 32fcae0f2..152c473c7 100644 --- a/content/references/translations/en/processing/translate_.json +++ b/content/references/translations/en/processing/translate_.json @@ -10,7 +10,7 @@ "scale_" ], "name": "translate()", - "description": "Specifies an amount to displace objects within the display window. The\n x parameter specifies left/right translation, the y parameter\n specifies up/down translation, and the z parameter specifies\n translations toward/away from the screen. Using this function with the\n z parameter requires using P3D as a parameter in combination with size\n as shown in the above example.
\n
\n Transformations are cumulative and apply to everything that happens after and\n subsequent calls to the function accumulates the effect. For example, calling\n translate(50, 0) and then translate(20, 0) is the same as\n translate(70, 0). If translate() is called within\n draw(), the transformation is reset when the loop begins again. This\n function can be further controlled by using pushMatrix() and\n popMatrix().", + "description": "Specifies an amount to displace objects within the display window. The\n x parameter specifies left/right translation, the y parameter\n specifies up/down translation, and the z parameter specifies\n translations toward/away from the screen. Using this function with the\n z parameter requires using P3D as a parameter in combination with size\n as shown in the above example.\n

\n Transformations are cumulative and apply to everything that happens after and\n subsequent calls to the function accumulates the effect. For example, calling\n translate(50, 0) and then translate(20, 0) is the same as\n translate(70, 0). If translate() is called within\n draw(), the transformation is reset when the loop begins again. This\n function can be further controlled by using pushMatrix() and\n popMatrix().", "syntax": ["translate(x, y)", "translate(x, y, z)"], "returns": "void", "type": "function", diff --git a/content/references/translations/en/processing/vertex_.json b/content/references/translations/en/processing/vertex_.json index bc375d5ba..bd2b10731 100644 --- a/content/references/translations/en/processing/vertex_.json +++ b/content/references/translations/en/processing/vertex_.json @@ -9,7 +9,7 @@ "texture_" ], "name": "vertex()", - "description": "All shapes are constructed by connecting a series of vertices.\n vertex() is used to specify the vertex coordinates for points, lines,\n triangles, quads, and polygons. It is used exclusively within the\n beginShape() and endShape() functions.
\n
\n Drawing a vertex in 3D using the z parameter requires the P3D\n parameter in combination with size, as shown in the above example.
\n
\n This function is also used to map a texture onto geometry. The\n texture() function declares the texture to apply to the geometry and\n the u and v coordinates set define the mapping of this texture\n to the form. By default, the coordinates used for u and v are\n specified in relation to the image's size in pixels, but this relation can be\n changed with textureMode().", + "description": "All shapes are constructed by connecting a series of vertices.\n vertex() is used to specify the vertex coordinates for points, lines,\n triangles, quads, and polygons. It is used exclusively within the\n beginShape() and endShape() functions.
\n
\n Drawing a vertex in 3D using the z parameter requires the P3D\n parameter in combination with size, as shown in the above example.
\n
\n This function is also used to map a texture onto geometry. The\n texture() function declares the texture to apply to the geometry and\n the u and v coordinates set define the mapping of this texture\n to the form. By default, the coordinates used for u and v are\n specified in relation to the image's size in pixels, but this relation can be\n changed with textureMode().", "syntax": [ "vertex(x, y)", "vertex(x, y, z)", diff --git a/content/references/translations/en/processing/windowMove_.json b/content/references/translations/en/processing/windowMove_.json new file mode 100644 index 000000000..0ad0b42cc --- /dev/null +++ b/content/references/translations/en/processing/windowMove_.json @@ -0,0 +1,23 @@ +{ + "brief": "The windowMove() function defines the position of the Processing\n sketch in relation to the upper-left corner of the computer screen", + "related": [], + "name": "windowMove()", + "description": "The windowMove() function defines the position of the Processing\n sketch in relation to the upper-left corner of the computer screen.", + "syntax": ["windowMove(x, y)"], + "returns": "void", + "type": "function", + "category": "environment", + "subcategory": "", + "parameters": [ + { + "name": "x", + "description": "x-coordinate of the window", + "type": ["int"] + }, + { + "name": "y", + "description": "y-coordinate of the window", + "type": ["int"] + } + ] +} diff --git a/content/references/translations/en/processing/windowMoved_.json b/content/references/translations/en/processing/windowMoved_.json new file mode 100644 index 000000000..9ed6ac588 --- /dev/null +++ b/content/references/translations/en/processing/windowMoved_.json @@ -0,0 +1,12 @@ +{ + "brief": "Called every time the sketch window is moved", + "related": [], + "name": "windowMoved()", + "description": "Called when the window is moved.", + "syntax": ["windowMoved()"], + "returns": "void", + "type": "function", + "category": "environment", + "subcategory": "", + "parameters": [] +} diff --git a/content/references/translations/en/processing/windowRatio_.json b/content/references/translations/en/processing/windowRatio_.json new file mode 100644 index 000000000..a46d0f6e1 --- /dev/null +++ b/content/references/translations/en/processing/windowRatio_.json @@ -0,0 +1,15 @@ +{ + "brief": "Scale the sketch as if it fit a specific width and height", + "related": [], + "name": "windowRatio()", + "description": "Scale the sketch as if it fit this specific width and height.\n This will also scale the mouseX and mouseY variables (as well as\n pmouseX and pmouseY). Note that it will not have an effect on\n MouseEvent objects (i.e. event.getX() and event.getY()) because\n their exact behavior may interact strangely with other libraries.", + "syntax": ["windowRatio(wide, high)"], + "returns": "void", + "type": "function", + "category": "environment", + "subcategory": "", + "parameters": [ + { "name": "wide", "description": "width of the sketch", "type": ["int"] }, + { "name": "high", "description": "height of the sketch", "type": ["int"] } + ] +} diff --git a/content/references/translations/en/processing/windowResizable_.json b/content/references/translations/en/processing/windowResizable_.json new file mode 100644 index 000000000..fdd92f42d --- /dev/null +++ b/content/references/translations/en/processing/windowResizable_.json @@ -0,0 +1,18 @@ +{ + "brief": "Define whether the sketch window can be resized while it's running", + "related": [], + "name": "windowResizable()", + "description": "By default, Processing sketches can't be resized. When\n surface.setResizable(true) is used within a sketch,\n the window can be resized while it's running.", + "syntax": ["windowResizable(resizable)"], + "returns": "void", + "type": "function", + "category": "environment", + "subcategory": "", + "parameters": [ + { + "name": "resizable", + "description": "true to make the window resizable", + "type": ["boolean"] + } + ] +} diff --git a/content/references/translations/en/processing/windowResize_.json b/content/references/translations/en/processing/windowResize_.json new file mode 100644 index 000000000..7faa1df90 --- /dev/null +++ b/content/references/translations/en/processing/windowResize_.json @@ -0,0 +1,23 @@ +{ + "brief": "The windowResize() function defines the size of the sketch window", + "related": [], + "name": "windowResize()", + "description": "The windowWidth() function defines the width of the sketch window", + "syntax": ["windowResize(newWidth, newHeight)"], + "returns": "void", + "type": "function", + "category": "environment", + "subcategory": "", + "parameters": [ + { + "name": "newWidth", + "description": "width of the window", + "type": ["int"] + }, + { + "name": "newHeight", + "description": "height of the window", + "type": ["int"] + } + ] +} diff --git a/content/references/translations/en/processing/windowResized_.json b/content/references/translations/en/processing/windowResized_.json new file mode 100644 index 000000000..a2db312ea --- /dev/null +++ b/content/references/translations/en/processing/windowResized_.json @@ -0,0 +1,12 @@ +{ + "brief": "Called every time the sketch window is resized", + "related": [], + "name": "windowResized()", + "description": "Called every time the sketch window is resized.", + "syntax": ["windowResized()"], + "returns": "void", + "type": "function", + "category": "environment", + "subcategory": "", + "parameters": [] +} diff --git a/content/references/translations/en/processing/windowTitle_.json b/content/references/translations/en/processing/windowTitle_.json new file mode 100644 index 000000000..d0230bbf7 --- /dev/null +++ b/content/references/translations/en/processing/windowTitle_.json @@ -0,0 +1,14 @@ +{ + "brief": "The windowTitle() function defines the title to appear at the top of the sketch window", + "related": [], + "name": "windowTitle()", + "description": "The windowTitle() function defines the title to appear at the top of the sketch window", + "syntax": ["windowTitle(title)"], + "returns": "void", + "type": "function", + "category": "environment", + "subcategory": "", + "parameters": [ + { "name": "title", "description": "name of the window", "type": ["String"] } + ] +} diff --git a/content/references/translations/en/serial/Serial_list_.json b/content/references/translations/en/serial/Serial_list_.json index 01dae3194..303281216 100644 --- a/content/references/translations/en/serial/Serial_list_.json +++ b/content/references/translations/en/serial/Serial_list_.json @@ -2,7 +2,7 @@ "brief": "Gets a list of all available serial ports", "related": [], "name": "list()", - "description": "Gets a list of all available serial ports. Use println() to write the \n information to the text window.", + "description": "Gets a list of all available serial ports. Use println() to write the\n information to the text window.", "syntax": ["serial.list()"], "returns": "String[]", "type": "method", diff --git a/content/references/translations/en/serial/Serial_readBytesUntil_.json b/content/references/translations/en/serial/Serial_readBytesUntil_.json index c21f95a98..86884ba3a 100644 --- a/content/references/translations/en/serial/Serial_readBytesUntil_.json +++ b/content/references/translations/en/serial/Serial_readBytesUntil_.json @@ -2,7 +2,7 @@ "brief": "Reads from the port into a buffer of bytes up to and including a particular character", "related": [], "name": "readBytesUntil()", - "description": "Reads from the port into a buffer of bytes up to and including a particular character. If the \n character isn't in the buffer, null is returned. The version with without the \n byteBuffer parameter returns a byte array of all data up to and including the \n interesting byte. This is not efficient, but is easy to use. The version with the \n byteBuffer parameter is more memory and time efficient. It grabs the data in the buffer \n and puts it into the byte array passed in and returns an int value for the number of bytes read. \n If the byte buffer is not large enough, -1 is returned and an error is printed to the message \n area. If nothing is in the buffer, 0 is returned.", + "description": "Reads from the port into a buffer of bytes up to and including a particular character. If the\n character isn't in the buffer, null is returned. The version with without the\n byteBuffer parameter returns a byte array of all data up to and including the\n interesting byte. This is not efficient, but is easy to use. The version with the\n byteBuffer parameter is more memory and time efficient. It grabs the data in the buffer\n and puts it into the byte array passed in and returns an int value for the number of bytes read.\n If the byte buffer is not large enough, -1 is returned and an error is printed to the message\n area. If nothing is in the buffer, 0 is returned.", "syntax": [ "serial.readBytesUntil(inByte)", "serial.readBytesUntil(inByte, dest)" diff --git a/content/references/translations/en/serial/Serial_readBytes_.json b/content/references/translations/en/serial/Serial_readBytes_.json index de69e4627..edc9d2f7f 100644 --- a/content/references/translations/en/serial/Serial_readBytes_.json +++ b/content/references/translations/en/serial/Serial_readBytes_.json @@ -2,7 +2,7 @@ "brief": "Reads a group of bytes from the buffer or null if there are none available", "related": [], "name": "readBytes()", - "description": "Reads a group of bytes from the buffer or null if there are none available. The version \n with no parameters returns a byte array of all data in the buffer. This is not efficient, but \n is easy to use. The version with the byteBuffer parameter is more memory and time \n efficient. It grabs the data in the buffer and puts it into the byte array passed in and returns \n an int value for the number of bytes read. If more bytes are available than can fit into the \n byteBuffer, only those that fit are read.", + "description": "Reads a group of bytes from the buffer or null if there are none available. The version\n with no parameters returns a byte array of all data in the buffer. This is not efficient, but\n is easy to use. The version with the byteBuffer parameter is more memory and time\n efficient. It grabs the data in the buffer and puts it into the byte array passed in and returns\n an int value for the number of bytes read. If more bytes are available than can fit into the\n byteBuffer, only those that fit are read.", "syntax": [ "serial.readBytes()", "serial.readBytes(max)", diff --git a/content/references/translations/en/serial/Serial_readChar_.json b/content/references/translations/en/serial/Serial_readChar_.json index 3df83674a..f21191c49 100644 --- a/content/references/translations/en/serial/Serial_readChar_.json +++ b/content/references/translations/en/serial/Serial_readChar_.json @@ -2,7 +2,7 @@ "brief": "Returns the next byte in the buffer as a char", "related": [], "name": "readChar()", - "description": "Returns the next byte in the buffer as a char. Returns -1 or 0xffff \n if nothing is there.", + "description": "Returns the next byte in the buffer as a char. Returns -1 or 0xffff\n if nothing is there.", "syntax": ["serial.readChar()"], "returns": "char", "type": "method", diff --git a/content/references/translations/en/serial/Serial_readStringUntil_.json b/content/references/translations/en/serial/Serial_readStringUntil_.json index 350d82a86..05990927f 100644 --- a/content/references/translations/en/serial/Serial_readStringUntil_.json +++ b/content/references/translations/en/serial/Serial_readStringUntil_.json @@ -2,7 +2,7 @@ "brief": "Combination of readBytesUntil() and readString()", "related": [], "name": "readStringUntil()", - "description": "Combination of readBytesUntil() and readString(). Returns null \n if it doesn't find what you're looking for.", + "description": "Combination of readBytesUntil() and readString(). Returns null\n if it doesn't find what you're looking for.", "syntax": ["serial.readStringUntil(inByte)"], "returns": "String", "type": "method", diff --git a/content/references/translations/en/serial/Serial_readString_.json b/content/references/translations/en/serial/Serial_readString_.json index fe711ec00..2f9757804 100644 --- a/content/references/translations/en/serial/Serial_readString_.json +++ b/content/references/translations/en/serial/Serial_readString_.json @@ -2,7 +2,7 @@ "brief": "Returns all the data from the buffer as a String or null if there is nothing available", "related": [], "name": "readString()", - "description": "Returns all the data from the buffer as a String or null if there is nothing available. \n This method assumes the incoming characters are ASCII. If you want to transfer Unicode data, \n first convert the String to a byte stream in the representation of your choice (i.e. UTF8 or \n two-byte Unicode data), and send it as a byte array.", + "description": "Returns all the data from the buffer as a String or null if there is nothing available.\n This method assumes the incoming characters are ASCII. If you want to transfer Unicode data,\n first convert the String to a byte stream in the representation of your choice (i.e. UTF8 or\n two-byte Unicode data), and send it as a byte array.", "syntax": ["serial.readString()"], "returns": "String", "type": "method", diff --git a/content/references/translations/en/serial/Serial_read_.json b/content/references/translations/en/serial/Serial_read_.json index f260069ff..8e48a2a0e 100644 --- a/content/references/translations/en/serial/Serial_read_.json +++ b/content/references/translations/en/serial/Serial_read_.json @@ -2,7 +2,7 @@ "brief": "Returns a number between 0 and 255 for the next byte that's waiting in the buffer", "related": [], "name": "read()", - "description": "Returns a number between 0 and 255 for the next byte that's waiting in the buffer. \n Returns -1 if there is no byte, although this should be avoided by first cheacking \n available() to see if data is available.", + "description": "Returns a number between 0 and 255 for the next byte that's waiting in the buffer.\n Returns -1 if there is no byte, although this should be avoided by first cheacking\n available() to see if data is available.", "syntax": ["serial.read()"], "returns": "int", "type": "method", diff --git a/content/references/translations/en/serial/Serial_serialEvent_.json b/content/references/translations/en/serial/Serial_serialEvent_.json index ddbce658f..0ead5a1e8 100644 --- a/content/references/translations/en/serial/Serial_serialEvent_.json +++ b/content/references/translations/en/serial/Serial_serialEvent_.json @@ -2,7 +2,7 @@ "brief": "Called when data is available", "related": [], "name": "serialEvent()", - "description": "Called when data is available. Use one of the read() methods to capture this data. \n The serialEvent() can be set with buffer() to only trigger after a certain \n number of data elements are read and can be set with bufferUntil() to only trigger \n after a specific character is read. The which parameter contains the name of the \n port where new data is available, but is only useful when there is more than one serial \n connection open and it's necessary to distinguish between the two.", + "description": "Called when data is available. Use one of the read() methods to capture this data.\n The serialEvent() can be set with buffer() to only trigger after a certain\n number of data elements are read and can be set with bufferUntil() to only trigger\n after a specific character is read. The which parameter contains the name of the\n port where new data is available, but is only useful when there is more than one serial\n connection open and it's necessary to distinguish between the two.", "syntax": ["serial.serialEvent(event)"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/serial/Serial_write_.json b/content/references/translations/en/serial/Serial_write_.json index 04126aeae..c5780ffea 100644 --- a/content/references/translations/en/serial/Serial_write_.json +++ b/content/references/translations/en/serial/Serial_write_.json @@ -2,7 +2,7 @@ "brief": "Writes bytes, chars, ints, bytes[], Strings to the serial port", "related": [], "name": "write()", - "description": "Writes bytes, chars, ints, bytes[], Strings to the serial port\n \n ", + "description": "Writes bytes, chars, ints, bytes[], Strings to the serial port\n\n ", "syntax": ["serial.write(src)"], "returns": "void", "type": "method", diff --git a/content/references/translations/en/sound/AllPass.json b/content/references/translations/en/sound/AllPass.json new file mode 100644 index 000000000..53e3f7284 --- /dev/null +++ b/content/references/translations/en/sound/AllPass.json @@ -0,0 +1,34 @@ +{ + "brief": "Outputs all input frequencies at the same amplitude but changes \n their phase relationship.", + "methods": [ + { + "anchor": "AllPass_gain_", + "name": "gain()", + "desc": "Sets the gain for the filter." + }, + { + "anchor": "AllPass_process_", + "name": "process()", + "desc": "Start the effect." + }, + { + "anchor": "AllPass_stop_", + "name": "stop()", + "desc": "Stop the effect." + } + ], + "csspath": "../../", + "isLibrary": "true", + "classFields": [], + "description": "This is an all pass filter. For signals processed, all frequencies hold the \n same amplitude but have their phase relationship modified using a delayline \n of one sample,
\n
\n y(k) = -z * x(k) + x(k - 1) + z * y(k - 1)
\n
\n where y is the output, x is the input, \n z is the gain coefficient, and k is the signal.", + "type": "class", + "constructors": [ + "AllPass(parent)" + ], + "related": [], + "name": "AllPass", + "classanchor": "sound/AllPass", + "category": "Effects", + "subcategory": "AllPass", + "parameters": [] +} diff --git a/content/references/translations/en/sound/AllPass_gain_.json b/content/references/translations/en/sound/AllPass_gain_.json new file mode 100644 index 000000000..0ed39f0ee --- /dev/null +++ b/content/references/translations/en/sound/AllPass_gain_.json @@ -0,0 +1,19 @@ +{ + "brief": "Sets the gain for the filter.", + "related": [], + "name": "gain()", + "description": "Sets the gain for the filter in the range 0.0 - 1.0, where larger values \n increase phase displacement.", + "syntax": ["allpass.gain(g)"], + "returns": "void", + "type": "method", + "category": "Effects", + "subcategory": "AllPass", + "classanchor": "AllPass", + "parameters": [ + { + "name": "g", + "description": "phase displacement in the range 0.0 - 1.0", + "type": ["float"] + } + ] +} diff --git a/content/references/translations/en/sound/AllPass_process_.json b/content/references/translations/en/sound/AllPass_process_.json new file mode 100644 index 000000000..4cff3d0e5 --- /dev/null +++ b/content/references/translations/en/sound/AllPass_process_.json @@ -0,0 +1,19 @@ +{ + "brief": "Start the effect.", + "related": [], + "name": "process()", + "description": "Start the effect.", + "syntax": ["effect.process(input)"], + "returns": "void", + "type": "method", + "category": "Effects", + "subcategory": "AllPass", + "classanchor": "AllPass", + "parameters": [ + { + "name": "input", + "description": "Input sound source", + "type": ["SoundObject"] + } + ] +} diff --git a/content/references/translations/en/sound/AllPass_stop_.json b/content/references/translations/en/sound/AllPass_stop_.json new file mode 100644 index 000000000..9e8e6148f --- /dev/null +++ b/content/references/translations/en/sound/AllPass_stop_.json @@ -0,0 +1,13 @@ +{ + "brief": "Stop the effect.", + "related": [], + "name": "stop()", + "description": "Stop the effect.", + "syntax": ["effect.stop()"], + "returns": "void", + "type": "method", + "category": "Effects", + "subcategory": "AllPass", + "classanchor": "AllPass", + "parameters": [] +} diff --git a/content/references/translations/en/sound/Amplitude.json b/content/references/translations/en/sound/Amplitude.json index dbbaf27cb..84ea3fab9 100644 --- a/content/references/translations/en/sound/Amplitude.json +++ b/content/references/translations/en/sound/Amplitude.json @@ -17,17 +17,21 @@ "classFields": [], "description": "This is a volume analyzer. It calculates the root mean square of the\n amplitude of each audio block and returns that value.", "type": "class", - "constructors": ["Amplitude(parent)"], + "constructors": [ + "Amplitude(parent)" + ], "related": [], "name": "Amplitude", "classanchor": "sound/Amplitude", - "category": "analysis", - "subcategory": "amplitude", + "category": "Analysis", + "subcategory": "Amplitude", "parameters": [ { "name": "parent", "description": "typically use \"this\"", - "type": ["PApplet"] + "type": [ + "PApplet" + ] } ] } diff --git a/content/references/translations/en/sound/Amplitude_analyze_.json b/content/references/translations/en/sound/Amplitude_analyze_.json index 120787704..9005601ef 100644 --- a/content/references/translations/en/sound/Amplitude_analyze_.json +++ b/content/references/translations/en/sound/Amplitude_analyze_.json @@ -3,11 +3,11 @@ "related": [], "name": "analyze()", "description": "Queries a value from the analyzer and returns a float between 0. and 1.", - "syntax": [".analyze()"], + "syntax": ["amplitude.analyze()"], "returns": "float", "type": "method", - "category": "analysis", - "subcategory": "amplitude", + "category": "Analysis", + "subcategory": "Amplitude", "classanchor": "Amplitude", "parameters": [] } diff --git a/content/references/translations/en/sound/Amplitude_input_.json b/content/references/translations/en/sound/Amplitude_input_.json index e2ef71828..db6f41e91 100644 --- a/content/references/translations/en/sound/Amplitude_input_.json +++ b/content/references/translations/en/sound/Amplitude_input_.json @@ -3,11 +3,11 @@ "related": [], "name": "input()", "description": "Define the audio input for the analyzer.", - "syntax": [".input(input)"], + "syntax": ["amplitude.input(input)"], "returns": "void", "type": "method", - "category": "analysis", - "subcategory": "amplitude", + "category": "Analysis", + "subcategory": "Amplitude", "classanchor": "Amplitude", "parameters": [ { diff --git a/content/references/translations/en/sound/Amplitude_stop_.json b/content/references/translations/en/sound/Amplitude_stop_.json deleted file mode 100644 index 2265b13b8..000000000 --- a/content/references/translations/en/sound/Amplitude_stop_.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "brief": "", - "related": [], - "name": "stop()", - "description": "", - "syntax": [".stop()"], - "returns": "void", - "type": "method", - "category": "analysis", - "subcategory": "Amplitude", - "classanchor": "Amplitude", - "parameters": [] -} diff --git a/content/references/translations/en/sound/AudioIn.json b/content/references/translations/en/sound/AudioIn.json index 3ce2a629b..57693b73a 100644 --- a/content/references/translations/en/sound/AudioIn.json +++ b/content/references/translations/en/sound/AudioIn.json @@ -1,20 +1,35 @@ { "brief": "AudioIn lets you grab the audio input from your sound card.", "methods": [ + { + "anchor": "AudioIn_amp_", + "name": "amp()", + "desc": "Change the amplitude/volume of this sound." + }, + { + "anchor": "AudioIn_pan_", + "name": "pan()", + "desc": "Move the sound in a stereo panorama." + }, { "anchor": "AudioIn_play_", "name": "play()", "desc": "Start capturing the input stream and route it to the audio output" }, + { + "anchor": "AudioIn_set_", + "name": "set()", + "desc": "Set amplitude and pan position with one method." + }, { "anchor": "AudioIn_start_", "name": "start()", "desc": "Start the input stream without routing it to the audio output." }, { - "anchor": "AudioIn_set_", - "name": "set()", - "desc": "Sets amplitude, add and pan position with one method." + "anchor": "AudioIn_stop_", + "name": "stop()", + "desc": "Stop capturing sound from this audio input." } ], "csspath": "../../", @@ -22,7 +37,10 @@ "classFields": [], "description": "AudioIn lets you grab the audio input from your sound card.", "type": "class", - "constructors": ["AudioIn(parent)", "AudioIn(parent, in)"], + "constructors": [ + "AudioIn(parent)", + "AudioIn(parent, in)" + ], "related": [], "name": "AudioIn", "classanchor": "sound/AudioIn", @@ -32,12 +50,16 @@ { "name": "parent", "description": "typically use \"this\"", - "type": ["PApplet"] + "type": [ + "PApplet" + ] }, { "name": "in", "description": "input channel number (optional, default 0)", - "type": ["int"] + "type": [ + "int" + ] } ] } diff --git a/content/references/translations/en/sound/AudioIn_add_.json b/content/references/translations/en/sound/AudioIn_add_.json deleted file mode 100644 index dd1829edb..000000000 --- a/content/references/translations/en/sound/AudioIn_add_.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "brief": "The .add() method is useful for modulating other audio signals.", - "related": [], - "name": "add()", - "description": "The .add() method is useful for modulating other audio signals.", - "syntax": [".add(add)"], - "returns": "void", - "type": "method", - "category": "I/O", - "subcategory": "AudioIn", - "classanchor": "AudioIn", - "parameters": [ - { - "name": "add", - "description": "offset the output of the audio input by the given value", - "type": ["float"] - } - ] -} diff --git a/content/references/translations/en/sound/AudioIn_amp_.json b/content/references/translations/en/sound/AudioIn_amp_.json index 4317bf1a9..f6f911ad2 100644 --- a/content/references/translations/en/sound/AudioIn_amp_.json +++ b/content/references/translations/en/sound/AudioIn_amp_.json @@ -1,9 +1,9 @@ { - "brief": "Changes the amplitude/volume of the input stream.", + "brief": "Change the amplitude/volume of this sound.", "related": [], "name": "amp()", - "description": "Changes the amplitude/volume of the input stream. Allowed values are between 0.0 and 1.0.", - "syntax": [".amp(amp)"], + "description": "Change the amplitude/volume of this sound.", + "syntax": ["soundobject.amp(amp)"], "returns": "void", "type": "method", "category": "I/O", @@ -12,7 +12,7 @@ "parameters": [ { "name": "amp", - "description": "the amplitude of the input stream as a value from 0.0 (complete silence) to 1.0 (full volume)", + "description": "A float value between 0.0 (complete silence) and 1.0 (full volume)\n controlling the amplitude/volume of this sound.", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/AudioIn_pan_.json b/content/references/translations/en/sound/AudioIn_pan_.json index bfe3f7065..c9cc9f8df 100644 --- a/content/references/translations/en/sound/AudioIn_pan_.json +++ b/content/references/translations/en/sound/AudioIn_pan_.json @@ -1,9 +1,9 @@ { - "brief": "Pan the input stream in a stereo panorama.", + "brief": "Move the sound in a stereo panorama.", "related": [], "name": "pan()", - "description": "Pan the input stream in a stereo panorama. -1.0 pans to the left channel and 1.0 to the right channel.", - "syntax": [".pan(pos)"], + "description": "Move the sound in a stereo panorama.", + "syntax": ["soundobject.pan(pos)"], "returns": "void", "type": "method", "category": "I/O", @@ -12,7 +12,7 @@ "parameters": [ { "name": "pos", - "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0\n (right).", + "description": "The panoramic position of this sound unit as a float from -1.0\n (left) to 1.0 (right).", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/AudioIn_play_.json b/content/references/translations/en/sound/AudioIn_play_.json index 3ac59792f..2daa36f0e 100644 --- a/content/references/translations/en/sound/AudioIn_play_.json +++ b/content/references/translations/en/sound/AudioIn_play_.json @@ -4,10 +4,10 @@ "name": "play()", "description": "Start capturing the input stream and route it to the audio output", "syntax": [ - ".play()", - ".play(amp)", - ".play(amp, add)", - ".play(amp, add, pos)" + "audioin.play()", + "audioin.play(amp)", + "audioin.play(amp, add)", + "audioin.play(amp, add, pos)" ], "returns": "void", "type": "method", @@ -20,11 +20,6 @@ "description": "the volume to grab the input at as a value from 0.0 (complete\n silence) to 1.0 (full volume)", "type": ["float"] }, - { - "name": "add", - "description": "offset the audio input by the given value", - "type": ["float"] - }, { "name": "pos", "description": "pan the audio input in a stereo panorama. Allowed values are\n between -1.0 (left) and 1.0 (right)", diff --git a/content/references/translations/en/sound/AudioIn_set_.json b/content/references/translations/en/sound/AudioIn_set_.json index 26e8c9a17..52353569a 100644 --- a/content/references/translations/en/sound/AudioIn_set_.json +++ b/content/references/translations/en/sound/AudioIn_set_.json @@ -1,9 +1,9 @@ { - "brief": "Sets amplitude, add and pan position with one method.", + "brief": "Set amplitude and pan position with one method.", "related": [], "name": "set()", - "description": "Sets amplitude, add and pan position with one method.", - "syntax": [".set(amp, add, pos)"], + "description": "Set amplitude and pan position with one method.", + "syntax": ["audioin.set(amp, pos)", "audioin.set(amp, add, pos)"], "returns": "void", "type": "method", "category": "I/O", @@ -15,11 +15,6 @@ "description": "the volume to grab the input at as a value from 0.0 (complete\n silence) to 1.0 (full volume)", "type": ["float"] }, - { - "name": "add", - "description": "offset the audio input by the given value", - "type": ["float"] - }, { "name": "pos", "description": "pan the audio input in a stereo panorama. Allowed values are\n between -1.0 (left) and 1.0 (right)", diff --git a/content/references/translations/en/sound/AudioIn_start_.json b/content/references/translations/en/sound/AudioIn_start_.json index 118ac5f5e..c6cc62966 100644 --- a/content/references/translations/en/sound/AudioIn_start_.json +++ b/content/references/translations/en/sound/AudioIn_start_.json @@ -4,10 +4,10 @@ "name": "start()", "description": "Start the input stream without routing it to the audio output. This is useful\n if you only want to perform audio analysis based on the microphone input.", "syntax": [ - ".start()", - ".start(amp)", - ".start(amp, add)", - ".start(amp, add, pos)" + "audioin.start()", + "audioin.start(amp)", + "audioin.start(amp, add)", + "audioin.start(amp, add, pos)" ], "returns": "void", "type": "method", diff --git a/content/references/translations/en/sound/AudioIn_stop_.json b/content/references/translations/en/sound/AudioIn_stop_.json index 161c893ff..935c28e1e 100644 --- a/content/references/translations/en/sound/AudioIn_stop_.json +++ b/content/references/translations/en/sound/AudioIn_stop_.json @@ -1,9 +1,9 @@ { - "brief": "Stops the Input Stream.", + "brief": "Stop capturing sound from this audio input.", "related": [], "name": "stop()", - "description": "Stops the Input Stream.", - "syntax": [".stop()"], + "description": "Stop capturing sound from this audio input.", + "syntax": ["audioin.stop()"], "returns": "void", "type": "method", "category": "I/O", diff --git a/content/references/translations/en/sound/AudioSample.json b/content/references/translations/en/sound/AudioSample.json index 0d34aff4e..497f42fc6 100644 --- a/content/references/translations/en/sound/AudioSample.json +++ b/content/references/translations/en/sound/AudioSample.json @@ -34,7 +34,7 @@ { "anchor": "AudioSample_jump_", "name": "jump()", - "desc": "Jump to a specific position in the audiosample while continuing to play (or starting to play if it wasn't playing already)." + "desc": "Jumps to a specific position in the audio sample." }, { "anchor": "AudioSample_jumpFrame_", @@ -120,7 +120,7 @@ "csspath": "../../", "isLibrary": "true", "classFields": [], - "description": "This class allows you low-level access to an audio buffer to create, access,\n manipulate and play back sound samples.\n \n If you want to pre-load your audio sample with an audio file from disk you\n can do so using the SoundFile subclass.", + "description": "This class allows you low-level access to an audio buffer to create, access,\n manipulate and play back sound samples.\n \n If you want to pre-load your audio sample with an audio file from disk you\n can do so using the {@link SoundFile} subclass.", "type": "class", "constructors": [ "AudioSample(parent, frames)", @@ -135,7 +135,7 @@ "related": [], "name": "AudioSample", "classanchor": "sound/AudioSample", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "parameters": [ { @@ -150,18 +150,13 @@ }, { "name": "stereo", - "description": "whether to treat the audiosample as 2-channel (stereo) or not\n (default: false)", + "description": "whether to treat the audiosample as 2-channel (stereo) or not\n (default: ,,false,,)", "type": ["boolean"] }, { "name": "frameRate", "description": "the underlying frame rate of the sample (default: 44100)", "type": ["int"] - }, - { - "name": "data", - "description": "an array of float values to be used as this audiosample's sound\n data. The audiosample will consequently have as many frames as the\n length of the given array.", - "type": ["float[]"] } ] } diff --git a/content/references/translations/en/sound/AudioSample_amp_.json b/content/references/translations/en/sound/AudioSample_amp_.json index defe174c4..20b8b75ee 100644 --- a/content/references/translations/en/sound/AudioSample_amp_.json +++ b/content/references/translations/en/sound/AudioSample_amp_.json @@ -3,10 +3,10 @@ "related": [], "name": "amp()", "description": "Change the amplitude/volume of the player. Values are between 0.0 and 1.0.", - "syntax": [".amp(amp)"], + "syntax": ["audiosample.amp(amp)"], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [ diff --git a/content/references/translations/en/sound/AudioSample_channels_.json b/content/references/translations/en/sound/AudioSample_channels_.json index 03f75e02b..1b7fcf9ac 100644 --- a/content/references/translations/en/sound/AudioSample_channels_.json +++ b/content/references/translations/en/sound/AudioSample_channels_.json @@ -3,10 +3,10 @@ "related": [], "name": "channels()", "description": "Returns the number of channels in the audiosample as an int (1 for mono, 2 for stereo).", - "syntax": [".channels()"], + "syntax": ["audiosample.channels()"], "returns": "int", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [] diff --git a/content/references/translations/en/sound/AudioSample_cueFrame_.json b/content/references/translations/en/sound/AudioSample_cueFrame_.json index 304c0965b..c6324910c 100644 --- a/content/references/translations/en/sound/AudioSample_cueFrame_.json +++ b/content/references/translations/en/sound/AudioSample_cueFrame_.json @@ -3,10 +3,10 @@ "related": [], "name": "cueFrame()", "description": "Cues the playhead to a fixed position in the audiosample.", - "syntax": [".cueFrame(frameNumber)"], + "syntax": ["audiosample.cueFrame(frameNumber)"], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [ diff --git a/content/references/translations/en/sound/AudioSample_cue_.json b/content/references/translations/en/sound/AudioSample_cue_.json index 6ca2515e0..f6665b802 100644 --- a/content/references/translations/en/sound/AudioSample_cue_.json +++ b/content/references/translations/en/sound/AudioSample_cue_.json @@ -3,10 +3,10 @@ "related": [], "name": "cue()", "description": "Cues the playhead to a fixed position in the audiosample. Note that cue() only affects the playhead for future calls to play(), but not to loop().", - "syntax": [".cue(time)"], + "syntax": ["audiosample.cue(time)"], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [ diff --git a/content/references/translations/en/sound/AudioSample_duration_.json b/content/references/translations/en/sound/AudioSample_duration_.json index fecb605c2..f8b459d88 100644 --- a/content/references/translations/en/sound/AudioSample_duration_.json +++ b/content/references/translations/en/sound/AudioSample_duration_.json @@ -3,10 +3,10 @@ "related": [], "name": "duration()", "description": "Returns the duration of the audiosample in seconds.", - "syntax": [".duration()"], + "syntax": ["audiosample.duration()"], "returns": "float", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [] diff --git a/content/references/translations/en/sound/AudioSample_frames_.json b/content/references/translations/en/sound/AudioSample_frames_.json index 13ea9bbea..27eefb3d0 100644 --- a/content/references/translations/en/sound/AudioSample_frames_.json +++ b/content/references/translations/en/sound/AudioSample_frames_.json @@ -3,10 +3,10 @@ "related": [], "name": "frames()", "description": "Returns the number of frames of the audiosample as an int.", - "syntax": [".frames()"], + "syntax": ["audiosample.frames()"], "returns": "int", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [] diff --git a/content/references/translations/en/sound/AudioSample_jumpFrame_.json b/content/references/translations/en/sound/AudioSample_jumpFrame_.json index f6d125517..6b7bc6bc3 100644 --- a/content/references/translations/en/sound/AudioSample_jumpFrame_.json +++ b/content/references/translations/en/sound/AudioSample_jumpFrame_.json @@ -1,12 +1,12 @@ { "brief": "Jump to a specific position in the audiosample without interrupting playback.", - "related": [], + "related": ["sound/AudioSample_cue_", "sound/AudioSample_play_"], "name": "jumpFrame()", "description": "Jump to a specific position in the audiosample without interrupting playback.", - "syntax": [".jumpFrame(frameNumber)"], + "syntax": ["audiosample.jumpFrame(frameNumber)"], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [] diff --git a/content/references/translations/en/sound/AudioSample_jump_.json b/content/references/translations/en/sound/AudioSample_jump_.json index fa4cc9975..abb0ce879 100644 --- a/content/references/translations/en/sound/AudioSample_jump_.json +++ b/content/references/translations/en/sound/AudioSample_jump_.json @@ -1,18 +1,18 @@ { - "brief": "Jump to a specific position in the audiosample while continuing to play (or starting to play if it wasn't playing already).", - "related": [], + "brief": "Jumps to a specific position in the audio sample.", + "related": ["sound/AudioSample_cue_", "sound/AudioSample_play_"], "name": "jump()", - "description": "Jump to a specific position in the audiosample while continuing to play (or starting to play if it wasn't playing already).", - "syntax": [".jump(time)"], + "description": "Jump to a specific position in the audiosample while continuing to play (or \n starting to play if it wasn't playing already).", + "syntax": ["audiosample.jump(time)"], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [ { "name": "time", - "description": "position to jump to, in seconds.", + "description": "position to jump to, in seconds", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/AudioSample_loop_.json b/content/references/translations/en/sound/AudioSample_loop_.json index dabc77adb..b59c95efd 100644 --- a/content/references/translations/en/sound/AudioSample_loop_.json +++ b/content/references/translations/en/sound/AudioSample_loop_.json @@ -4,15 +4,14 @@ "name": "loop()", "description": "Starts the playback of the audiosample. Only plays to the end of the audiosample \n once. If cue() or pause() were called previously, playback will resume from the cued position.", "syntax": [ - ".loop()", - ".loop(rate)", - ".loop(rate, amp)", - ".loop(rate, pos, amp)", - ".loop(rate, pos, amp, add)" + "audiosample.loop()", + "audiosample.loop(rate)", + "audiosample.loop(rate, amp)", + "audiosample.loop(rate, pos, amp)" ], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [ @@ -30,11 +29,6 @@ "name": "amp", "description": "the desired playback amplitude of the audiosample as a value from\n 0.0 (complete silence) to 1.0 (full volume)", "type": ["float"] - }, - { - "name": "add", - "description": "offset the output of the generator by the given value", - "type": ["float"] } ] } diff --git a/content/references/translations/en/sound/AudioSample_pan_.json b/content/references/translations/en/sound/AudioSample_pan_.json index e89a2b6b2..79cba1d48 100644 --- a/content/references/translations/en/sound/AudioSample_pan_.json +++ b/content/references/translations/en/sound/AudioSample_pan_.json @@ -3,10 +3,10 @@ "related": [], "name": "pan()", "description": "Pan the soundfile in a stereo panorama. -1.0 pans to the left channel and 1.0 to the right channel. \n Note that panning is only supported for mono (1 channel) audiosamples.", - "syntax": [".pan(pos)"], + "syntax": ["audiosample.pan(pos)"], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [ diff --git a/content/references/translations/en/sound/AudioSample_pause_.json b/content/references/translations/en/sound/AudioSample_pause_.json index 67c5bd44e..3758ba4e7 100644 --- a/content/references/translations/en/sound/AudioSample_pause_.json +++ b/content/references/translations/en/sound/AudioSample_pause_.json @@ -1,12 +1,12 @@ { "brief": "Stop the playback of the sample, but cue it to the current position.", - "related": [], + "related": ["sound/AudioSample_cue_"], "name": "pause()", "description": "Stop the playback of the sample, but cue it to the current position. \n The next call to play() will continue playing where it left off.", - "syntax": [".pause()"], + "syntax": ["audiosample.pause()"], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [] diff --git a/content/references/translations/en/sound/AudioSample_percent_.json b/content/references/translations/en/sound/AudioSample_percent_.json index c78f8da96..2448fb3ae 100644 --- a/content/references/translations/en/sound/AudioSample_percent_.json +++ b/content/references/translations/en/sound/AudioSample_percent_.json @@ -3,10 +3,10 @@ "related": [], "name": "percent()", "description": "Get current sound file playback position in percent.\n \n Note that, if this audio sample was at some point played back in parallel\n (triggered by another call to play() before the original playback had finished),\n the position returned by this function can be of any of the concurrent playbacks,\n not necessarily the last one that was triggered.", - "syntax": [".percent()"], + "syntax": ["audiosample.percent()"], "returns": "float", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [] diff --git a/content/references/translations/en/sound/AudioSample_playFor_.json b/content/references/translations/en/sound/AudioSample_playFor_.json index a24b22f1c..a2a24655d 100644 --- a/content/references/translations/en/sound/AudioSample_playFor_.json +++ b/content/references/translations/en/sound/AudioSample_playFor_.json @@ -3,10 +3,13 @@ "related": [], "name": "playFor()", "description": "Starts the playback of the audiosample for the specified duration or to the\n end of the audiosample, whichever comes first.", - "syntax": [".playFor(duration)", ".playFor(duration, cue)"], + "syntax": [ + "audiosample.playFor(duration)", + "audiosample.playFor(duration, cue)" + ], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [ diff --git a/content/references/translations/en/sound/AudioSample_play_.json b/content/references/translations/en/sound/AudioSample_play_.json index 385d6ca21..7e680043d 100644 --- a/content/references/translations/en/sound/AudioSample_play_.json +++ b/content/references/translations/en/sound/AudioSample_play_.json @@ -4,16 +4,15 @@ "name": "play()", "description": "Starts the playback of the audiosample. Only plays to the end of the audiosample \n once. If cue() or pause() were called previously, playback will resume from the cued position.", "syntax": [ - ".play()", - ".play(rate)", - ".play(rate, amp)", - ".play(rate, pos, amp)", - ".play(rate, pos, amp, add)", - ".play(rate, pos, amp, add, cue)" + "audiosample.play()", + "audiosample.play(rate)", + "audiosample.play(rate, amp)", + "audiosample.play(rate, pos, amp)", + "audiosample.play(rate, pos, amp, cue)" ], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [ @@ -32,11 +31,6 @@ "description": "the desired playback amplitude of the audiosample as a value from\n 0.0 (complete silence) to 1.0 (full volume)", "type": ["float"] }, - { - "name": "add", - "description": "offset the output of the generator by the given value", - "type": ["float"] - }, { "name": "cue", "description": "position in the audiosample that playback should start from, in\n seconds.", diff --git a/content/references/translations/en/sound/AudioSample_positionFrame_.json b/content/references/translations/en/sound/AudioSample_positionFrame_.json index 5b481f2f1..bfd5c6474 100644 --- a/content/references/translations/en/sound/AudioSample_positionFrame_.json +++ b/content/references/translations/en/sound/AudioSample_positionFrame_.json @@ -3,10 +3,10 @@ "related": [], "name": "positionFrame()", "description": "Get frame index of current sound file playback position.\n \n Note that, if this audio sample was at some point played back in parallel\n (triggered by another call to play() before the original playback had finished),\n the position returned by this function can be of any of the concurrent playbacks,\n not necessarily the last one that was triggered.", - "syntax": [".positionFrame()"], + "syntax": ["audiosample.positionFrame()"], "returns": "int", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [] diff --git a/content/references/translations/en/sound/AudioSample_position_.json b/content/references/translations/en/sound/AudioSample_position_.json index 4e95572ef..5c618742a 100644 --- a/content/references/translations/en/sound/AudioSample_position_.json +++ b/content/references/translations/en/sound/AudioSample_position_.json @@ -3,10 +3,10 @@ "related": [], "name": "position()", "description": "Get current sound file playback position in seconds.\n \n Note that, if this audio sample was at some point played back in parallel\n (triggered by another call to play() before the original playback had finished),\n the position returned by this function can be of any of the concurrent playbacks,\n not necessarily the last one that was triggered.", - "syntax": [".position()"], + "syntax": ["audiosample.position()"], "returns": "float", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [] diff --git a/content/references/translations/en/sound/AudioSample_rate_.json b/content/references/translations/en/sound/AudioSample_rate_.json index ecea2e3a0..c98138544 100644 --- a/content/references/translations/en/sound/AudioSample_rate_.json +++ b/content/references/translations/en/sound/AudioSample_rate_.json @@ -3,10 +3,10 @@ "related": [], "name": "rate()", "description": "Set the relative playback rate of the audiosample. 1 is the original speed. \n 0.5 is half speed and one octave down. 2 is double the speed and one octave up.", - "syntax": [".rate(rate)"], + "syntax": ["audiosample.rate(rate)"], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [ diff --git a/content/references/translations/en/sound/AudioSample_read_.json b/content/references/translations/en/sound/AudioSample_read_.json index 98f31d4a9..f8524421b 100644 --- a/content/references/translations/en/sound/AudioSample_read_.json +++ b/content/references/translations/en/sound/AudioSample_read_.json @@ -4,14 +4,14 @@ "name": "read()", "description": "The underlying data of the audiosample can be read and written in several different ways:\n the method taking a single float array `data` gets the current sample data and write it \n into the given array. The array has to be able to store as many floats as there are frames \n in this sample.\n It is also possible to only read parts of the sample data using the method with four arguments, \n which allows you to specify the index of the first frame to read, the position in the array to \n write it to, as well as how many frames to copy over into the array in total.\n Finally, the method taking a single integer argument `index` returns the value of the single \n audio frame of the sample at this index as a float.", "syntax": [ - ".read(data)", - ".read(startFrame, data, startIndex, numFrames)", - ".read(frameIndex)", - ".read(frameIndex, channelIndex)" + "audiosample.read(data)", + "audiosample.read(startFrame, data, startIndex, numFrames)", + "audiosample.read(frameIndex)", + "audiosample.read(frameIndex, channelIndex)" ], "returns": "void or float", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [ diff --git a/content/references/translations/en/sound/AudioSample_resize_.json b/content/references/translations/en/sound/AudioSample_resize_.json index c7341c516..561931751 100644 --- a/content/references/translations/en/sound/AudioSample_resize_.json +++ b/content/references/translations/en/sound/AudioSample_resize_.json @@ -3,10 +3,13 @@ "related": [], "name": "resize()", "description": "Resizes the underlying buffer of the audiosample to the given number of frames. \n Calling this method allocates a completely new buffer, so any ongoing playback \n will be stopped and all data currently stored in the sample will be lost.", - "syntax": [".resize(frames)", ".resize(frames, stereo)"], + "syntax": [ + "audiosample.resize(frames)", + "audiosample.resize(frames, stereo)" + ], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [ diff --git a/content/references/translations/en/sound/AudioSample_sampleRate_.json b/content/references/translations/en/sound/AudioSample_sampleRate_.json index bf7d4641e..30a0657f6 100644 --- a/content/references/translations/en/sound/AudioSample_sampleRate_.json +++ b/content/references/translations/en/sound/AudioSample_sampleRate_.json @@ -3,10 +3,10 @@ "related": [], "name": "sampleRate()", "description": "Returns the underlying sample rate of the audiosample.", - "syntax": [".sampleRate()"], + "syntax": ["audiosample.sampleRate()"], "returns": "int", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [] diff --git a/content/references/translations/en/sound/AudioSample_set_.json b/content/references/translations/en/sound/AudioSample_set_.json index 474959ccd..8286a6f9e 100644 --- a/content/references/translations/en/sound/AudioSample_set_.json +++ b/content/references/translations/en/sound/AudioSample_set_.json @@ -3,10 +3,10 @@ "related": [], "name": "set()", "description": "Set multiple parameters at once.", - "syntax": [".set(rate, pos, amp, add)"], + "syntax": ["audiosample.set(rate, pos, amp)"], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [ @@ -24,11 +24,6 @@ "name": "amp", "description": "the desired playback amplitude of the audiosample as a value from\n 0.0 (complete silence) to 1.0 (full volume)", "type": ["float"] - }, - { - "name": "add", - "description": "offset the output of the generator by the given value", - "type": ["float"] } ] } diff --git a/content/references/translations/en/sound/AudioSample_stop_.json b/content/references/translations/en/sound/AudioSample_stop_.json index bbc6a606f..1b2b6fd37 100644 --- a/content/references/translations/en/sound/AudioSample_stop_.json +++ b/content/references/translations/en/sound/AudioSample_stop_.json @@ -3,10 +3,10 @@ "related": [], "name": "stop()", "description": "Stops the playback.", - "syntax": [".stop()"], + "syntax": ["audiosample.stop()"], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [] diff --git a/content/references/translations/en/sound/AudioSample_write_.json b/content/references/translations/en/sound/AudioSample_write_.json index 605e9e37a..79ff9cbbf 100644 --- a/content/references/translations/en/sound/AudioSample_write_.json +++ b/content/references/translations/en/sound/AudioSample_write_.json @@ -4,13 +4,13 @@ "name": "write()", "description": "The underlying data of the audiosample can be read and (over)written in several different ways:\n the method taking a single float array `data` replaces the sample data with the content of the \n given array. The array has to contain as many floats as there are frames in this sample.\n It is also possible to only write parts of the sample data using the method with four arguments, \n which allows you to specify the index of the first frame to write, the position in the array to \n take the data from, as well as how many frames should be copied over.\n Finally, the method taking two arguments simply sets the value of the single audio frame \n specified by the first argument to the given float value.", "syntax": [ - ".write(data)", - ".write(startFrame, data, startIndex, numFrames)", - ".write(index, value)" + "audiosample.write(data)", + "audiosample.write(startFrame, data, startIndex, numFrames)", + "audiosample.write(index, value)" ], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "AudioSample", "classanchor": "AudioSample", "parameters": [ diff --git a/content/references/translations/en/sound/BandPass.json b/content/references/translations/en/sound/BandPass.json index 8cdfce8f9..12d09fd47 100644 --- a/content/references/translations/en/sound/BandPass.json +++ b/content/references/translations/en/sound/BandPass.json @@ -4,17 +4,32 @@ { "anchor": "BandPass_bw_", "name": "bw()", - "desc": "Set the bandwidth for the filter." + "desc": "Sets the bandwidth for the filter." }, { "anchor": "BandPass_freq_", "name": "freq()", - "desc": "Set the cutoff frequency for the filter." + "desc": "Sets the center frequency of the filter." + }, + { + "anchor": "BandPass_process_", + "name": "process()", + "desc": "Start applying this bandpass filter to an input signal." + }, + { + "anchor": "BandPass_res_", + "name": "res()", + "desc": "Sets the resonance (or 'Q factor') of this filter." }, { "anchor": "BandPass_set_", "name": "set()", "desc": "Sets frequency and bandwidth of the filter with one method." + }, + { + "anchor": "BandPass_stop_", + "name": "stop()", + "desc": "Stop the effect." } ], "csspath": "../../", @@ -22,11 +37,13 @@ "classFields": [], "description": "This is a band pass filter.", "type": "class", - "constructors": ["BandPass(parent)"], + "constructors": [ + "BandPass(parent)" + ], "related": [], "name": "BandPass", "classanchor": "sound/BandPass", - "category": "effects", + "category": "Effects", "subcategory": "BandPass", "parameters": [] } diff --git a/content/references/translations/en/sound/BandPass_bw_.json b/content/references/translations/en/sound/BandPass_bw_.json index 908dcd90f..0c33f3feb 100644 --- a/content/references/translations/en/sound/BandPass_bw_.json +++ b/content/references/translations/en/sound/BandPass_bw_.json @@ -1,13 +1,19 @@ { - "brief": "Set the bandwidth for the filter.", + "brief": "Sets the bandwidth for the filter.", "related": [], "name": "bw()", - "description": "Set the bandwidth for the filter.", - "syntax": [".bw(bw)"], + "description": "Sets the bandwidth of this BandPass filter.", + "syntax": ["bandpass.bw(bw)"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "BandPass", "classanchor": "BandPass", - "parameters": [] + "parameters": [ + { + "name": "bw", + "description": "the filter bandwidth in Hertz", + "type": ["float"] + } + ] } diff --git a/content/references/translations/en/sound/BandPass_freq_.json b/content/references/translations/en/sound/BandPass_freq_.json index 90f601046..8b20044df 100644 --- a/content/references/translations/en/sound/BandPass_freq_.json +++ b/content/references/translations/en/sound/BandPass_freq_.json @@ -1,18 +1,18 @@ { - "brief": "Set the cutoff frequency for the filter.", + "brief": "Sets the center frequency of the filter.", "related": [], "name": "freq()", - "description": "Set the cutoff frequency for the filter.", - "syntax": [".freq(freq)"], + "description": "Sets the center frequency of the filter.", + "syntax": ["bandpass.freq(freq)"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "BandPass", "classanchor": "BandPass", "parameters": [ { "name": "freq", - "description": "Cutoff frequency between 0 and 20000", + "description": "the center frequency in Hertz", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/BandPass_process_.json b/content/references/translations/en/sound/BandPass_process_.json index 4afffa9b9..f2868ff59 100644 --- a/content/references/translations/en/sound/BandPass_process_.json +++ b/content/references/translations/en/sound/BandPass_process_.json @@ -1,19 +1,29 @@ { - "brief": "Start the filter.", + "brief": "Start applying this bandpass filter to an input signal.", "related": [], "name": "process()", - "description": "Start the filter.", - "syntax": [".process(input)"], + "description": "Start applying this bandpass filter to an input signal.", + "syntax": ["bandpass.process(input, freq, bw)"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "BandPass", "classanchor": "BandPass", "parameters": [ { "name": "input", - "description": "Input audio source", + "description": "the sound source to filter", "type": ["SoundObject"] + }, + { + "name": "freq", + "description": "the center frequency in Hertz", + "type": ["float"] + }, + { + "name": "bw", + "description": "the filter bandwidth in Hertz", + "type": ["float"] } ] } diff --git a/content/references/translations/en/sound/BandPass_res_.json b/content/references/translations/en/sound/BandPass_res_.json new file mode 100644 index 000000000..6ebea0fbf --- /dev/null +++ b/content/references/translations/en/sound/BandPass_res_.json @@ -0,0 +1,19 @@ +{ + "brief": "Sets the resonance (or 'Q factor') of this filter.", + "related": [], + "name": "res()", + "description": "Sets a fixed Q factor for this filter. If you want to specify a fixed \n bandwidth for this bandpass filter (in Hertz) that is maintained even as \n the center frequency of the filter changes, use bw(float) \n instead.", + "syntax": ["bandpass.res(q)"], + "returns": "void", + "type": "method", + "category": "Effects", + "subcategory": "BandPass", + "classanchor": "BandPass", + "parameters": [ + { + "name": "q", + "description": "the desired Q factor, a value between 0.1 and 10", + "type": ["float"] + } + ] +} diff --git a/content/references/translations/en/sound/BandPass_set_.json b/content/references/translations/en/sound/BandPass_set_.json index ea097790f..3b56c63a5 100644 --- a/content/references/translations/en/sound/BandPass_set_.json +++ b/content/references/translations/en/sound/BandPass_set_.json @@ -3,14 +3,22 @@ "related": [], "name": "set()", "description": "Sets frequency and bandwidth of the filter with one method.", - "syntax": [".set(freq, bw)"], + "syntax": ["bandpass.set(freq, bw)"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "BandPass", "classanchor": "BandPass", "parameters": [ - { "name": "freq", "description": "Set the frequency", "type": ["float"] }, - { "name": "bw", "description": "Set the bandwidth", "type": ["float"] } + { + "name": "freq", + "description": "the center frequency in Hertz", + "type": ["float"] + }, + { + "name": "bw", + "description": "the filter bandwidth in Hertz", + "type": ["float"] + } ] } diff --git a/content/references/translations/en/sound/BandPass_stop_.json b/content/references/translations/en/sound/BandPass_stop_.json index b1046cd5a..c00ffaa3b 100644 --- a/content/references/translations/en/sound/BandPass_stop_.json +++ b/content/references/translations/en/sound/BandPass_stop_.json @@ -1,12 +1,12 @@ { - "brief": "Stops the filter.", + "brief": "Stop the effect.", "related": [], "name": "stop()", - "description": "Stops the filter.", - "syntax": [".stop()"], + "description": "Stop the effect.", + "syntax": ["effect.stop()"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "BandPass", "classanchor": "BandPass", "parameters": [] diff --git a/content/references/translations/en/sound/BeatDetector.json b/content/references/translations/en/sound/BeatDetector.json index 795ac1c94..29235068b 100644 --- a/content/references/translations/en/sound/BeatDetector.json +++ b/content/references/translations/en/sound/BeatDetector.json @@ -1,6 +1,11 @@ { "brief": "Looks for spikes in the energy of an audio signal\n which are often associated with rhythmic musical beats and can be used to trigger a\n response whenever the incoming audio signal pulses.", "methods": [ + { + "anchor": "BeatDetector_input_", + "name": "input()", + "desc": "Define the audio input for the analyzer." + }, { "anchor": "BeatDetector_isBeat_", "name": "isBeat()", @@ -20,19 +25,23 @@ "csspath": "../../", "isLibrary": "true", "classFields": [], - "description": "The BeatDetector analyzer looks for spikes in the energy of an audio signal\n which are often associated with rhythmic musical beats and can be used to trigger a\n response whenever the incoming audio signal pulses. Note that this\n implementation does not return a tempo or BPM (beats per minute) value \u2014 it\n can only tell you whether the current moment of audio contains a beat or not.", + "description": "The BeatDetector analyzer looks for spikes in the energy of an audio signal\n which are often associated with rhythmic musical beats and can be used to trigger a\n response whenever the incoming audio signal pulses. Note that this\n implementation does not return a tempo or BPM (beats per minute) value \\u2014 it\n can only tell you whether the current moment of audio contains a beat or not.", "type": "class", - "constructors": ["BeatDetector(parent)"], + "constructors": [ + "BeatDetector(parent)" + ], "related": [], "name": "BeatDetector", "classanchor": "sound/BeatDetector", - "category": "analysis", + "category": "Analysis", "subcategory": "BeatDetector", "parameters": [ { "name": "parent", "description": "Typically \"this\"", - "type": ["PApplet"] + "type": [ + "PApplet" + ] } ] } diff --git a/content/references/translations/en/sound/BeatDetector_input_.json b/content/references/translations/en/sound/BeatDetector_input_.json new file mode 100644 index 000000000..b5af948ff --- /dev/null +++ b/content/references/translations/en/sound/BeatDetector_input_.json @@ -0,0 +1,19 @@ +{ + "brief": "Define the audio input for the analyzer.", + "related": [], + "name": "input()", + "description": "Define the audio input for the analyzer.", + "syntax": ["analyzer.input(input)"], + "returns": "void", + "type": "method", + "category": "Analysis", + "subcategory": "BeatDetector", + "classanchor": "BeatDetector", + "parameters": [ + { + "name": "input", + "description": "The input sound source", + "type": ["SoundObject"] + } + ] +} diff --git a/content/references/translations/en/sound/BeatDetector_isBeat_.json b/content/references/translations/en/sound/BeatDetector_isBeat_.json index 8c3cbc2bf..28a7686f6 100644 --- a/content/references/translations/en/sound/BeatDetector_isBeat_.json +++ b/content/references/translations/en/sound/BeatDetector_isBeat_.json @@ -2,11 +2,11 @@ "brief": "Returns whether or not the current moment of audio contains a beat or not.", "related": [], "name": "isBeat()", - "description": "Returns whether or not the current moment of audio contains a beat or not.\n A \"beat\" is defined as a spike in the energy of the audio signal \u2014 it may\n or may not coincide exactly with a musical beat.", - "syntax": [".isBeat()"], + "description": "Returns true if the current moment of the audio signal \n contains a beat, false otherwise.
\n A \"beat\" is defined as a spike in the energy of the audio signal - it may\n or may not coincide exactly with a musical beat.", + "syntax": ["beatdetector.isBeat()"], "returns": "boolean", "type": "method", - "category": "analysis", + "category": "Analysis", "subcategory": "BeatDetector", "classanchor": "BeatDetector", "parameters": [] diff --git a/content/references/translations/en/sound/BeatDetector_sensitivity_.json b/content/references/translations/en/sound/BeatDetector_sensitivity_.json index 55ca1cb8e..ca7a16b82 100644 --- a/content/references/translations/en/sound/BeatDetector_sensitivity_.json +++ b/content/references/translations/en/sound/BeatDetector_sensitivity_.json @@ -3,10 +3,13 @@ "related": [], "name": "sensitivity()", "description": "Sets the sensitivity of the beat detector.", - "syntax": [".sensitivity(sensitivity)", ".sensitivity()"], + "syntax": [ + "beatdetector.sensitivity(sensitivity)", + "beatdetector.sensitivity()" + ], "returns": "int or void", "type": "method", - "category": "analysis", + "category": "Analysis", "subcategory": "BeatDetector", "classanchor": "BeatDetector", "parameters": [ diff --git a/content/references/translations/en/sound/BrownNoise.json b/content/references/translations/en/sound/BrownNoise.json index f11772432..e4270bbd5 100644 --- a/content/references/translations/en/sound/BrownNoise.json +++ b/content/references/translations/en/sound/BrownNoise.json @@ -1,53 +1,52 @@ { - "brief": "This is a brown noise generator.", + "brief": "Brown noise (also called red noise) has higher energy at lower frequencies.", "methods": [ - { - "anchor": "BrownNoise_play_", - "name": "play()", - "desc": "Start the generator." - }, - { - "anchor": "BrownNoise_set_", - "name": "set()", - "desc": "Sets amplitude, add and pan position with one method." - }, { "anchor": "BrownNoise_amp_", "name": "amp()", - "desc": "Changes the amplitude/volume of the noise generator." - }, - { - "anchor": "BrownNoise_add_", - "name": "add()", - "desc": "Offset the output of this generator by a fixed value." + "desc": "Change the amplitude/volume of this sound." }, { "anchor": "BrownNoise_pan_", "name": "pan()", - "desc": "Pan the generator in a stereo panorama." + "desc": "Move the sound in a stereo panorama." + }, + { + "anchor": "BrownNoise_play_", + "name": "play()", + "desc": "Starts the noise" + }, + { + "anchor": "BrownNoise_set_", + "name": "set()", + "desc": "Set the amplitude and panoramic position with one method." }, { "anchor": "BrownNoise_stop_", "name": "stop()", - "desc": "Stops the Brown Noise generator." + "desc": "Stop the noise from playing back" } ], "csspath": "../../", "isLibrary": "true", "classFields": [], - "description": "This is a brown noise generator. Brown noise has a decrease of 6db per octave.", + "description": "Brown noise (also called red noise) has higher energy at lower frequencies. Its power density\n decreases 6dB per octave.\n \n Please be aware that, because most of its power resides in the bass frequencies, the subjective\n loudness of brown noise relative to other sounds can vary dramatically depending on how well\n your sound system can reproduce low frequency sounds!", "type": "class", - "constructors": ["BrownNoise(parent)"], + "constructors": [ + "BrownNoise(parent)" + ], "related": [], "name": "BrownNoise", "classanchor": "sound/BrownNoise", - "category": "noise", + "category": "Noise", "subcategory": "BrownNoise", "parameters": [ { "name": "parent", "description": "typically use \"this\"", - "type": ["PApplet"] + "type": [ + "PApplet" + ] } ] } diff --git a/content/references/translations/en/sound/BrownNoise_add_.json b/content/references/translations/en/sound/BrownNoise_add_.json deleted file mode 100644 index c33602d9a..000000000 --- a/content/references/translations/en/sound/BrownNoise_add_.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "brief": "Offset the output of this generator by a fixed value.", - "related": [], - "name": "add()", - "description": "Offset the output of this generator by a fixed value.", - "syntax": [".add(add)"], - "returns": "void", - "type": "method", - "category": "noise", - "subcategory": "BrownNoise", - "classanchor": "BrownNoise", - "parameters": [ - { - "name": "add", - "description": "offset the output of the generator by the given value", - "type": ["float"] - } - ] -} diff --git a/content/references/translations/en/sound/BrownNoise_amp_.json b/content/references/translations/en/sound/BrownNoise_amp_.json index 20f857e99..79d741459 100644 --- a/content/references/translations/en/sound/BrownNoise_amp_.json +++ b/content/references/translations/en/sound/BrownNoise_amp_.json @@ -1,18 +1,18 @@ { - "brief": "Changes the amplitude/volume of the noise generator.", + "brief": "Change the amplitude/volume of this sound.", "related": [], "name": "amp()", - "description": "Changes the amplitude/volume of the noise generator. Allowed values are between 0.0 and 1.0.", - "syntax": [".amp(amp)"], + "description": "Change the amplitude/volume of this sound.", + "syntax": ["soundobject.amp(amp)"], "returns": "void", "type": "method", - "category": "noise", + "category": "Noise", "subcategory": "BrownNoise", "classanchor": "BrownNoise", "parameters": [ { "name": "amp", - "description": "the amplitude of the noise as a value from 0.0 (complete silence) to 1.0 (full volume)", + "description": "A float value between 0.0 (complete silence) and 1.0 (full volume)\n controlling the amplitude/volume of this sound.", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/BrownNoise_pan_.json b/content/references/translations/en/sound/BrownNoise_pan_.json index 3e1263c6c..7223c9a50 100644 --- a/content/references/translations/en/sound/BrownNoise_pan_.json +++ b/content/references/translations/en/sound/BrownNoise_pan_.json @@ -1,18 +1,18 @@ { - "brief": "Pan the generator in a stereo panorama.", + "brief": "Move the sound in a stereo panorama.", "related": [], "name": "pan()", - "description": "Pan the generator in a stereo panorama. -1.0 pans to the left channel and 1.0 to the right channel.", - "syntax": [".pan(pos)"], + "description": "Move the sound in a stereo panorama.", + "syntax": ["soundobject.pan(pos)"], "returns": "void", "type": "method", - "category": "noise", + "category": "Noise", "subcategory": "BrownNoise", "classanchor": "BrownNoise", "parameters": [ { "name": "pos", - "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0\n (right).", + "description": "The panoramic position of this sound unit as a float from -1.0\n (left) to 1.0 (right).", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/BrownNoise_play_.json b/content/references/translations/en/sound/BrownNoise_play_.json index 5bf0fc691..dad323e83 100644 --- a/content/references/translations/en/sound/BrownNoise_play_.json +++ b/content/references/translations/en/sound/BrownNoise_play_.json @@ -1,33 +1,27 @@ { - "brief": "Start the generator.", + "brief": "Starts the noise", "related": [], "name": "play()", - "description": "Start the generator.", + "description": "Starts the noise", "syntax": [ - ".play()", - ".play(amp)", - ".play(amp, pos)", - ".play(amp, add, pos)" + "noise.play(amp)", + "noise.play(amp, pos)", + "noise.play(amp, add, pos)" ], "returns": "void", "type": "method", - "category": "noise", + "category": "Noise", "subcategory": "BrownNoise", "classanchor": "BrownNoise", "parameters": [ { "name": "amp", - "description": "the amplitude of the noise as a value from 0.0 (complete silence) to 1.0 (full volume)", - "type": ["float"] - }, - { - "name": "add", - "description": "offset the output of the noise by given value", + "description": "The amplitude of the noise as a value between 0.0 and 1.0.", "type": ["float"] }, { "name": "pos", - "description": "pan the generator in stereo panorama. Allowed values are between -1.0 and 1.0.", + "description": "The panoramic position of the noise as a float from -1.0 to 1.0.", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/BrownNoise_set_.json b/content/references/translations/en/sound/BrownNoise_set_.json index 12aafe980..b5008cb35 100644 --- a/content/references/translations/en/sound/BrownNoise_set_.json +++ b/content/references/translations/en/sound/BrownNoise_set_.json @@ -1,28 +1,23 @@ { - "brief": "Sets amplitude, add and pan position with one method.", + "brief": "Set the amplitude and panoramic position with one method.", "related": [], "name": "set()", - "description": "Sets amplitude, add and pan position with one method.", - "syntax": [".set(amp, add, pos)"], + "description": "Set the amplitude and panoramic position with one method.", + "syntax": ["noise.set(amp, pos)", "noise.set(amp, add, pos)"], "returns": "void", "type": "method", - "category": "noise", + "category": "Noise", "subcategory": "BrownNoise", "classanchor": "BrownNoise", "parameters": [ { "name": "amp", - "description": "the amplitude of the noise as a value from 0.0 (complete silence) to 1.0 (full volume)", - "type": ["float"] - }, - { - "name": "add", - "description": "offset the output of the noise by given value", + "description": "The amplitude of the noise as a value between 0.0 and 1.0.", "type": ["float"] }, { "name": "pos", - "description": "pan the generator in stereo panorama. Allowed values are between -1.0 and 1.0.", + "description": "The panoramic position of the noise as a float from -1.0 to 1.0.", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/BrownNoise_stop_.json b/content/references/translations/en/sound/BrownNoise_stop_.json index d9e63aa52..3b5f2f8c9 100644 --- a/content/references/translations/en/sound/BrownNoise_stop_.json +++ b/content/references/translations/en/sound/BrownNoise_stop_.json @@ -1,12 +1,12 @@ { - "brief": "Stops the Brown Noise generator.", + "brief": "Stop the noise from playing back", "related": [], "name": "stop()", - "description": "Stop the generator", - "syntax": [".stop()"], + "description": "Stop the noise from playing back", + "syntax": ["noise.stop()"], "returns": "void", "type": "method", - "category": "noise", + "category": "Noise", "subcategory": "BrownNoise", "classanchor": "BrownNoise", "parameters": [] diff --git a/content/references/translations/en/sound/Delay.json b/content/references/translations/en/sound/Delay.json index eca30543e..7962aa439 100644 --- a/content/references/translations/en/sound/Delay.json +++ b/content/references/translations/en/sound/Delay.json @@ -1,6 +1,11 @@ { "brief": "This is a simple delay effect.", "methods": [ + { + "anchor": "Delay_feedback_", + "name": "feedback()", + "desc": "Change the feedback of the delay effect." + }, { "anchor": "Delay_process_", "name": "process()", @@ -11,15 +16,15 @@ "name": "set()", "desc": "Set delay time and feedback values at once." }, + { + "anchor": "Delay_stop_", + "name": "stop()", + "desc": "Stop the effect." + }, { "anchor": "Delay_time_", "name": "time()", "desc": "Changes the delay time of the effect." - }, - { - "anchor": "Delay_feedback_", - "name": "feedback()", - "desc": "Change the feedback of the delay effect." } ], "csspath": "../../", @@ -27,11 +32,13 @@ "classFields": [], "description": "This is a simple delay effect.", "type": "class", - "constructors": ["Delay(parent)"], + "constructors": [ + "Delay(parent)" + ], "related": [], "name": "Delay", "classanchor": "sound/Delay", - "category": "effects", + "category": "Effects", "subcategory": "Delay", "parameters": [] } diff --git a/content/references/translations/en/sound/Delay_feedback_.json b/content/references/translations/en/sound/Delay_feedback_.json index 860bca74d..bf942706b 100644 --- a/content/references/translations/en/sound/Delay_feedback_.json +++ b/content/references/translations/en/sound/Delay_feedback_.json @@ -3,10 +3,10 @@ "related": [], "name": "feedback()", "description": "Change the feedback of the delay effect.", - "syntax": [".feedback(feedback)"], + "syntax": ["delay.feedback(feedback)"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "Delay", "classanchor": "Delay", "parameters": [ diff --git a/content/references/translations/en/sound/Delay_process_.json b/content/references/translations/en/sound/Delay_process_.json index 3e4cda228..2c9f855fa 100644 --- a/content/references/translations/en/sound/Delay_process_.json +++ b/content/references/translations/en/sound/Delay_process_.json @@ -4,12 +4,12 @@ "name": "process()", "description": "Start the delay effect.", "syntax": [ - ".process(input, maxDelayTime, delayTime)", - ".process(input, maxDelayTime)" + "delay.process(input, maxDelayTime, delayTime)", + "delay.process(input, maxDelayTime)" ], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "Delay", "classanchor": "Delay", "parameters": [ diff --git a/content/references/translations/en/sound/Delay_set_.json b/content/references/translations/en/sound/Delay_set_.json index e61a6e374..d112a5b7f 100644 --- a/content/references/translations/en/sound/Delay_set_.json +++ b/content/references/translations/en/sound/Delay_set_.json @@ -3,10 +3,10 @@ "related": [], "name": "set()", "description": "Set delay time and feedback values at once.", - "syntax": [".set(delayTime, feedback)"], + "syntax": ["delay.set(delayTime, feedback)"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "Delay", "classanchor": "Delay", "parameters": [ diff --git a/content/references/translations/en/sound/Delay_stop_.json b/content/references/translations/en/sound/Delay_stop_.json index 47346e7f0..ecc7721b3 100644 --- a/content/references/translations/en/sound/Delay_stop_.json +++ b/content/references/translations/en/sound/Delay_stop_.json @@ -1,12 +1,12 @@ { - "brief": "Stops the effect.", + "brief": "Stop the effect.", "related": [], "name": "stop()", - "description": "Stops the effect.", - "syntax": [".stop()"], + "description": "Stop the effect.", + "syntax": ["effect.stop()"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "Delay", "classanchor": "Delay", "parameters": [] diff --git a/content/references/translations/en/sound/Delay_time_.json b/content/references/translations/en/sound/Delay_time_.json index e2bfa9031..47c4c1d6b 100644 --- a/content/references/translations/en/sound/Delay_time_.json +++ b/content/references/translations/en/sound/Delay_time_.json @@ -3,10 +3,10 @@ "related": [], "name": "time()", "description": "Changes the delay time of the effect.", - "syntax": [".time(delayTime)"], + "syntax": ["delay.time(delayTime)"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "Delay", "classanchor": "Delay", "parameters": [ diff --git a/content/references/translations/en/sound/Env.json b/content/references/translations/en/sound/Env.json index a70222b96..526d39552 100644 --- a/content/references/translations/en/sound/Env.json +++ b/content/references/translations/en/sound/Env.json @@ -16,7 +16,7 @@ "related": [], "name": "Env", "classanchor": "sound/Env", - "category": "envelopes", - "subcategory": "Env", + "category": "Envelopes", + "subcategory": "", "parameters": [] } diff --git a/content/references/translations/en/sound/Env_play_.json b/content/references/translations/en/sound/Env_play_.json index bfdeba1db..08c2fd174 100644 --- a/content/references/translations/en/sound/Env_play_.json +++ b/content/references/translations/en/sound/Env_play_.json @@ -4,12 +4,12 @@ "name": "play()", "description": "Triggers the envelope.", "syntax": [ - ".play(input, attackTime, sustainTime, sustainLevel, releaseTime)" + "env.play(input, attackTime, sustainTime, sustainLevel, releaseTime)" ], "returns": "void", "type": "method", - "category": "envelopes", - "subcategory": "Env", + "category": "Envelopes", + "subcategory": "", "classanchor": "Env", "parameters": [ { @@ -27,6 +27,11 @@ "description": "Sustain time value as a float.", "type": ["float"] }, + { + "name": "sustainLevel", + "description": "Sustain level value as a float. (as fraction of the input amplitude)", + "type": ["float"] + }, { "name": "releaseTime", "description": "Release time value as a float.", diff --git a/content/references/translations/en/sound/FFT.json b/content/references/translations/en/sound/FFT.json index 0b33ef43c..38e8766f9 100644 --- a/content/references/translations/en/sound/FFT.json +++ b/content/references/translations/en/sound/FFT.json @@ -4,7 +4,12 @@ { "anchor": "FFT_analyze_", "name": "analyze()", - "desc": "Calculates the current frequency spectrum and returns it as an array with as many elements as frequency bands." + "desc": "Calculates the current frequency spectrum of the audio input \n signal." + }, + { + "anchor": "FFT_analyzeSample_", + "name": "analyzeSample()", + "desc": "Calculates the frequency spectrum of a given audio sample." }, { "anchor": "FFT_input_", @@ -17,22 +22,29 @@ "classFields": [], "description": "This is a Fast Fourier Transform (FFT) analyzer. It calculates the normalized\n power spectrum of an audio stream the moment it is queried with the analyze()\n method.", "type": "class", - "constructors": ["FFT(parent)", "FFT(parent, bands)"], + "constructors": [ + "FFT(parent)", + "FFT(parent, bands)" + ], "related": [], "name": "FFT", "classanchor": "sound/FFT", - "category": "analysis", + "category": "Analysis", "subcategory": "FFT", "parameters": [ { "name": "parent", "description": "typically use \"this\"", - "type": ["PApplet"] + "type": [ + "PApplet" + ] }, { "name": "bands", - "description": "number of frequency bands for the FFT as an integer (default 512).\n This parameter needs to be a power of 2 (e.g. 16, 32, 64, 128,\n ...).", - "type": ["int"] + "description": "number of frequency bands for the FFT. This parameter needs to \n be a power of 2 (e.g. 16, 32, 64, 128, ...). The default is 512.", + "type": [ + "int" + ] } ] } diff --git a/content/references/translations/en/sound/FFT_analyzeSample_.json b/content/references/translations/en/sound/FFT_analyzeSample_.json new file mode 100644 index 000000000..4e11d1331 --- /dev/null +++ b/content/references/translations/en/sound/FFT_analyzeSample_.json @@ -0,0 +1,27 @@ +{ + "brief": "Calculates the frequency spectrum of a given audio sample.", + "related": [], + "name": "analyzeSample()", + "description": "Calculates the frequency spectrum of a given audio sample and returns an \n array of magnitudes, one for each frequency band. The frequency associated \n with each band of the spectrum is frequency = binIndex * sampleRate / \n (2*numBands).
\n This version is intended to be used in non-real time processing, particularly when you are\n creating an animation in non-real time and want to get the FFT for a particular chunk of an audio sample.\n\n For stereo samples, you can call this function once for each channel, so you can display the left and right\n fft values separately.
\n\n The values of the resulting array show the amplitudes of pure tone \n components contained in the signal. If the signal is a sine with an \n amplitude of 1, the spectrum will have an absolute value of 1 (0 dB) at the \n frequency of the sine. For complex real-world signals the spectrum values \n will be much lower and usually don't exceed 0.05.", + "syntax": [ + "FFT.analyzeSample(sample, target)", + "FFT.analyzeSample(sample, numBands)" + ], + "returns": "float[]", + "type": "method", + "category": "Analysis", + "subcategory": "FFT", + "classanchor": "FFT", + "parameters": [ + { + "name": "sample", + "description": "an array of numbers that describe the waveform to be analyzed", + "type": ["float[]"] + }, + { + "name": "target", + "description": "array that the computed spectrum will be written to. The FFT \n will compute as many frequency bands as the length of this array, which \n must be a power of 2 (2, 4, 8, 16 etc.)", + "type": ["float[]"] + } + ] +} diff --git a/content/references/translations/en/sound/FFT_analyze_.json b/content/references/translations/en/sound/FFT_analyze_.json index 0475b0784..2810d112f 100644 --- a/content/references/translations/en/sound/FFT_analyze_.json +++ b/content/references/translations/en/sound/FFT_analyze_.json @@ -1,18 +1,18 @@ { - "brief": "Calculates the current frequency spectrum and returns it as an array with as many elements as frequency bands.", + "brief": "Calculates the current frequency spectrum of the audio input \n signal.", "related": [], "name": "analyze()", - "description": "Calculates the current frequency spectrum and returns it as an array with as many elements as frequency bands.", - "syntax": [".analyze()", ".analyze(value)"], + "description": "Calculates the current frequency spectrum of the input signal.\n Returns an array with as many elements as this FFT analyzer's number of \n frequency bands. The frequency associated with each band of the spectrum is\n frequency = binIndex * sampleRate / (2*numBands).
\n\n The values of the resulting array show the amplitudes of pure tone \n components contained in the signal. If the signal is a sine with an \n amplitude of 1, the spectrum will have an absolute value of 1 (0 dB) at the \n frequency of the sine. For complex real-world signals the spectrum values \n will be much lower and usually don't exceed 0.05.", + "syntax": ["fft.analyze()", "fft.analyze(target)"], "returns": "float[]", "type": "method", - "category": "analysis", + "category": "Analysis", "subcategory": "FFT", "classanchor": "FFT", "parameters": [ { - "name": "value", - "description": "an array with as many elements as this FFT analyzer's number of\n frequency bands", + "name": "target", + "description": "if provided, writes the frequency spectrum into the given array.\n The array needs to have as many elements as this FFT analyzer's \n number of frequency bands.", "type": ["float[]"] } ] diff --git a/content/references/translations/en/sound/FFT_input_.json b/content/references/translations/en/sound/FFT_input_.json index 9f27f741f..6ed62c1c8 100644 --- a/content/references/translations/en/sound/FFT_input_.json +++ b/content/references/translations/en/sound/FFT_input_.json @@ -3,16 +3,16 @@ "related": [], "name": "input()", "description": "Define the audio input for the analyzer.", - "syntax": [".input(input)"], + "syntax": ["analyzer.input(input)"], "returns": "void", "type": "method", - "category": "analysis", + "category": "Analysis", "subcategory": "FFT", "classanchor": "FFT", "parameters": [ { "name": "input", - "description": "the input sound source. Can be an oscillator, noise generator,\n SoundFile or AudioIn.", + "description": "The input sound source", "type": ["SoundObject"] } ] diff --git a/content/references/translations/en/sound/FFT_stop_.json b/content/references/translations/en/sound/FFT_stop_.json deleted file mode 100644 index 353f9db13..000000000 --- a/content/references/translations/en/sound/FFT_stop_.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "brief": "Stops the FFT.", - "related": [], - "name": "stop()", - "description": "Stops the FFT.", - "syntax": [".stop()"], - "returns": "void", - "type": "method", - "category": "analysis", - "subcategory": "FFT", - "classanchor": "FFT", - "parameters": [] -} diff --git a/content/references/translations/en/sound/HighPass.json b/content/references/translations/en/sound/HighPass.json index 84e182bb9..f6f26d83f 100644 --- a/content/references/translations/en/sound/HighPass.json +++ b/content/references/translations/en/sound/HighPass.json @@ -4,7 +4,27 @@ { "anchor": "HighPass_freq_", "name": "freq()", - "desc": "Set the cut off frequency for the filter." + "desc": "Sets the cutoff frequency for the filter." + }, + { + "anchor": "HighPass_process_", + "name": "process()", + "desc": "Starts applying this filter to an input signal." + }, + { + "anchor": "HighPass_res_", + "name": "res()", + "desc": "Sets the resonance (or 'Q factor') of this filter. Increasing Q increases \n the resonance of the filter at its cutoff frequency. Defaults to 1." + }, + { + "anchor": "HighPass_set_", + "name": "set()", + "desc": "Sets frequency and bandwidth of the filter with one method." + }, + { + "anchor": "HighPass_stop_", + "name": "stop()", + "desc": "Stop the effect." } ], "csspath": "../../", @@ -12,11 +32,13 @@ "classFields": [], "description": "This is a high pass filter.", "type": "class", - "constructors": ["HighPass(parent)"], + "constructors": [ + "HighPass(parent)" + ], "related": [], "name": "HighPass", "classanchor": "sound/HighPass", - "category": "effects", + "category": "Effects", "subcategory": "HighPass", "parameters": [] } diff --git a/content/references/translations/en/sound/HighPass_freq_.json b/content/references/translations/en/sound/HighPass_freq_.json index 7969602a0..82f303ab6 100644 --- a/content/references/translations/en/sound/HighPass_freq_.json +++ b/content/references/translations/en/sound/HighPass_freq_.json @@ -1,12 +1,12 @@ { - "brief": "Set the cut off frequency for the filter.", + "brief": "Sets the cutoff frequency for the filter.", "related": [], "name": "freq()", - "description": "Set the cut off frequency for the filter.", - "syntax": [".freq(freq)"], + "description": "Sets the cutoff frequency for the filter.", + "syntax": ["filter.freq(freq)"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "HighPass", "classanchor": "HighPass", "parameters": [ diff --git a/content/references/translations/en/sound/HighPass_process_.json b/content/references/translations/en/sound/HighPass_process_.json index 02ca85568..f4d520c8f 100644 --- a/content/references/translations/en/sound/HighPass_process_.json +++ b/content/references/translations/en/sound/HighPass_process_.json @@ -1,19 +1,29 @@ { - "brief": "Start the filter.", + "brief": "Starts applying this filter to an input signal.", "related": [], "name": "process()", - "description": "Start the filter.", - "syntax": [".process(input)"], + "description": "Starts applying this filter to an input signal.", + "syntax": ["filter.process(input, freq)", "filter.process(input, freq, q)"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "HighPass", "classanchor": "HighPass", "parameters": [ { "name": "input", - "description": "Input audio source", + "description": "the sound source to filter", "type": ["SoundObject"] + }, + { + "name": "freq", + "description": "the cutoff frequency in Hertz", + "type": ["float"] + }, + { + "name": "q", + "description": "the resonance (or 'Q factor'), a value between 0.1 and 10", + "type": ["float"] } ] } diff --git a/content/references/translations/en/sound/HighPass_res_.json b/content/references/translations/en/sound/HighPass_res_.json new file mode 100644 index 000000000..7e261fe37 --- /dev/null +++ b/content/references/translations/en/sound/HighPass_res_.json @@ -0,0 +1,19 @@ +{ + "brief": "Sets the resonance (or 'Q factor') of this filter.", + "related": [], + "name": "res()", + "description": "Sets the resonance (or 'Q factor') of this filter. Increasing Q increases \n the resonance of the filter at its cutoff frequency. Defaults to 1.", + "syntax": ["filter.res(q)"], + "returns": "void", + "type": "method", + "category": "Effects", + "subcategory": "HighPass", + "classanchor": "HighPass", + "parameters": [ + { + "name": "q", + "description": "the desired Q factor, a value between 0.1 and 10", + "type": ["float"] + } + ] +} diff --git a/content/references/translations/en/sound/HighPass_set_.json b/content/references/translations/en/sound/HighPass_set_.json new file mode 100644 index 000000000..0d08a7e1d --- /dev/null +++ b/content/references/translations/en/sound/HighPass_set_.json @@ -0,0 +1,24 @@ +{ + "brief": "Sets frequency and bandwidth of the filter with one method.", + "related": [], + "name": "set()", + "description": "Sets frequency and bandwidth of the filter with one method.", + "syntax": ["filter.set(freq, q)"], + "returns": "void", + "type": "method", + "category": "Effects", + "subcategory": "HighPass", + "classanchor": "HighPass", + "parameters": [ + { + "name": "freq", + "description": "the cutoff frequency in Hertz", + "type": ["float"] + }, + { + "name": "q", + "description": "the resonance (or 'Q factor'), a value between 0.1 and 10", + "type": ["float"] + } + ] +} diff --git a/content/references/translations/en/sound/HighPass_stop_.json b/content/references/translations/en/sound/HighPass_stop_.json index ee2bf7a81..6b5c0a73e 100644 --- a/content/references/translations/en/sound/HighPass_stop_.json +++ b/content/references/translations/en/sound/HighPass_stop_.json @@ -1,12 +1,12 @@ { - "brief": "Stops the Filter.", + "brief": "Stop the effect.", "related": [], "name": "stop()", - "description": "Stops the Filter.", - "syntax": [".stop()"], + "description": "Stop the effect.", + "syntax": ["effect.stop()"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "HighPass", "classanchor": "HighPass", "parameters": [] diff --git a/content/references/translations/en/sound/LowPass.json b/content/references/translations/en/sound/LowPass.json index 12cadd715..5da83b89b 100644 --- a/content/references/translations/en/sound/LowPass.json +++ b/content/references/translations/en/sound/LowPass.json @@ -4,7 +4,27 @@ { "anchor": "LowPass_freq_", "name": "freq()", - "desc": "Set the cut off frequency for the filter." + "desc": "Sets the cutoff frequency for the filter." + }, + { + "anchor": "LowPass_process_", + "name": "process()", + "desc": "Starts applying this filter to an input signal." + }, + { + "anchor": "LowPass_res_", + "name": "res()", + "desc": "Sets the resonance (or 'Q factor') of this filter. Increasing Q increases \n the resonance of the filter at its cutoff frequency. Defaults to 1." + }, + { + "anchor": "LowPass_set_", + "name": "set()", + "desc": "Sets frequency and bandwidth of the filter with one method." + }, + { + "anchor": "LowPass_stop_", + "name": "stop()", + "desc": "Stop the effect." } ], "csspath": "../../", @@ -12,11 +32,13 @@ "classFields": [], "description": "This is a low pass filter.", "type": "class", - "constructors": ["LowPass(parent)"], + "constructors": [ + "LowPass(parent)" + ], "related": [], "name": "LowPass", "classanchor": "sound/LowPass", - "category": "effects", + "category": "Effects", "subcategory": "LowPass", "parameters": [] } diff --git a/content/references/translations/en/sound/LowPass_freq_.json b/content/references/translations/en/sound/LowPass_freq_.json index c8e1a3013..117a30cf4 100644 --- a/content/references/translations/en/sound/LowPass_freq_.json +++ b/content/references/translations/en/sound/LowPass_freq_.json @@ -1,12 +1,12 @@ { - "brief": "Set the cut off frequency for the filter.", + "brief": "Sets the cutoff frequency for the filter.", "related": [], "name": "freq()", - "description": "Set the cut off frequency for the filter.", - "syntax": [".freq(freq)"], + "description": "Sets the cutoff frequency for the filter.", + "syntax": ["filter.freq(freq)"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "LowPass", "classanchor": "LowPass", "parameters": [ diff --git a/content/references/translations/en/sound/LowPass_process_.json b/content/references/translations/en/sound/LowPass_process_.json new file mode 100644 index 000000000..f272e2b7b --- /dev/null +++ b/content/references/translations/en/sound/LowPass_process_.json @@ -0,0 +1,29 @@ +{ + "brief": "Starts applying this filter to an input signal.", + "related": [], + "name": "process()", + "description": "Starts applying this filter to an input signal.", + "syntax": ["filter.process(input, freq)", "filter.process(input, freq, q)"], + "returns": "void", + "type": "method", + "category": "Effects", + "subcategory": "LowPass", + "classanchor": "LowPass", + "parameters": [ + { + "name": "input", + "description": "the sound source to filter", + "type": ["SoundObject"] + }, + { + "name": "freq", + "description": "the cutoff frequency in Hertz", + "type": ["float"] + }, + { + "name": "q", + "description": "the resonance (or 'Q factor'), a value between 0.1 and 10", + "type": ["float"] + } + ] +} diff --git a/content/references/translations/en/sound/LowPass_res_.json b/content/references/translations/en/sound/LowPass_res_.json new file mode 100644 index 000000000..065d44d82 --- /dev/null +++ b/content/references/translations/en/sound/LowPass_res_.json @@ -0,0 +1,19 @@ +{ + "brief": "Sets the resonance (or 'Q factor') of this filter.", + "related": [], + "name": "res()", + "description": "Sets the resonance (or 'Q factor') of this filter. Increasing Q increases \n the resonance of the filter at its cutoff frequency. Defaults to 1.", + "syntax": ["filter.res(q)"], + "returns": "void", + "type": "method", + "category": "Effects", + "subcategory": "LowPass", + "classanchor": "LowPass", + "parameters": [ + { + "name": "q", + "description": "the desired Q factor, a value between 0.1 and 10", + "type": ["float"] + } + ] +} diff --git a/content/references/translations/en/sound/LowPass_set_.json b/content/references/translations/en/sound/LowPass_set_.json new file mode 100644 index 000000000..0a7c5d63e --- /dev/null +++ b/content/references/translations/en/sound/LowPass_set_.json @@ -0,0 +1,24 @@ +{ + "brief": "Sets frequency and bandwidth of the filter with one method.", + "related": [], + "name": "set()", + "description": "Sets frequency and bandwidth of the filter with one method.", + "syntax": ["filter.set(freq, q)"], + "returns": "void", + "type": "method", + "category": "Effects", + "subcategory": "LowPass", + "classanchor": "LowPass", + "parameters": [ + { + "name": "freq", + "description": "the cutoff frequency in Hertz", + "type": ["float"] + }, + { + "name": "q", + "description": "the resonance (or 'Q factor'), a value between 0.1 and 10", + "type": ["float"] + } + ] +} diff --git a/content/references/translations/en/sound/LowPass_stop_.json b/content/references/translations/en/sound/LowPass_stop_.json new file mode 100644 index 000000000..73434b31f --- /dev/null +++ b/content/references/translations/en/sound/LowPass_stop_.json @@ -0,0 +1,13 @@ +{ + "brief": "Stop the effect.", + "related": [], + "name": "stop()", + "description": "Stop the effect.", + "syntax": ["effect.stop()"], + "returns": "void", + "type": "method", + "category": "Effects", + "subcategory": "LowPass", + "classanchor": "LowPass", + "parameters": [] +} diff --git a/content/references/translations/en/sound/MultiChannel.json b/content/references/translations/en/sound/MultiChannel.json new file mode 100644 index 000000000..2422247d2 --- /dev/null +++ b/content/references/translations/en/sound/MultiChannel.json @@ -0,0 +1,32 @@ +{ + "brief": "Controls the routing of sounds on multi-channel devices", + "methods": [ + { + "anchor": "MultiChannel_activeChannel_", + "name": "activeChannel()", + "desc": "Controls which output channel sounds will be played back to.\n\n After selecting a new output channel, all sounds that start `play()`ing \n will be sent to that channel." + }, + { + "anchor": "MultiChannel_availableChannels_", + "name": "availableChannels()", + "desc": "Gets the number of output channels available on an output device" + }, + { + "anchor": "MultiChannel_usePortAudio_", + "name": "usePortAudio()", + "desc": "Force using PortAudio instead of JavaSound." + } + ], + "csspath": "../../", + "isLibrary": "true", + "classFields": [], + "description": "Controls the routing of sounds on multi-channel devices", + "type": "class", + "constructors": ["MultiChannel()"], + "related": [], + "name": "MultiChannel", + "classanchor": "sound/MultiChannel", + "category": "I/O", + "subcategory": "MultiChannel", + "parameters": [] +} diff --git a/content/references/translations/en/sound/MultiChannel_activeChannel_.json b/content/references/translations/en/sound/MultiChannel_activeChannel_.json new file mode 100644 index 000000000..8598ff61c --- /dev/null +++ b/content/references/translations/en/sound/MultiChannel_activeChannel_.json @@ -0,0 +1,22 @@ +{ + "brief": "Controls which output channel sounds will be played back to.\n\n After selecting a new output channel, all sounds that start `play()`ing \n will be sent to that channel.", + "related": ["sound/MultiChannel_availableChannels_"], + "name": "activeChannel()", + "description": "Controls which output channel sounds will be played back to.\n\n After selecting a new output channel, all sounds that start `play()`ing \n will be sent to that channel.", + "syntax": [ + "MultiChannel.activeChannel(channel)", + "MultiChannel.activeChannel()" + ], + "returns": "int", + "type": "method", + "category": "I/O", + "subcategory": "MultiChannel", + "classanchor": "MultiChannel", + "parameters": [ + { + "name": "channel", + "description": "the channel number to send sounds to", + "type": ["int"] + } + ] +} diff --git a/content/references/translations/en/sound/MultiChannel_availableChannels_.json b/content/references/translations/en/sound/MultiChannel_availableChannels_.json new file mode 100644 index 000000000..87520425b --- /dev/null +++ b/content/references/translations/en/sound/MultiChannel_availableChannels_.json @@ -0,0 +1,22 @@ +{ + "brief": "Gets the number of output channels available on an output device", + "related": ["sound/Sound_outputDevice_"], + "name": "availableChannels()", + "description": "Gets the number of output channels available on an output device", + "syntax": [ + "MultiChannel.availableChannels(deviceId)", + "MultiChannel.availableChannels()" + ], + "returns": "int", + "type": "method", + "category": "I/O", + "subcategory": "MultiChannel", + "classanchor": "MultiChannel", + "parameters": [ + { + "name": "deviceId", + "description": "if none is given, gets information about the current device.", + "type": ["int"] + } + ] +} diff --git a/content/references/translations/en/sound/MultiChannel_usePortAudio_.json b/content/references/translations/en/sound/MultiChannel_usePortAudio_.json new file mode 100644 index 000000000..e9e5144b5 --- /dev/null +++ b/content/references/translations/en/sound/MultiChannel_usePortAudio_.json @@ -0,0 +1,13 @@ +{ + "brief": "Force using PortAudio instead of JavaSound.", + "related": ["sound/Sound_list_"], + "name": "usePortAudio()", + "description": "Force using PortAudio instead of JavaSound.\n\n Support for 24 bit audio interfaces on Windows requires using the native\n PortAudio bindings instead of the default JavaSound one. The Sound library \n will automatically check for and load PortAudio when it is necessary to do \n so. However, when Sound.list() is called before selecting an \n output device, it might show an incorrect number of channels for \n multi-channel interfaces. By explicitly loading PortAudio ahead of time you \n can ensure that Sound.list() will show accurate channel \n numbers from the start.\n\n Returns true if PortAudio was successfully loaded.", + "syntax": ["MultiChannel.usePortAudio()"], + "returns": "boolean", + "type": "method", + "category": "I/O", + "subcategory": "MultiChannel", + "classanchor": "MultiChannel", + "parameters": [] +} diff --git a/content/references/translations/en/sound/PinkNoise.json b/content/references/translations/en/sound/PinkNoise.json index 8b9a0e87a..d036804f1 100644 --- a/content/references/translations/en/sound/PinkNoise.json +++ b/content/references/translations/en/sound/PinkNoise.json @@ -1,35 +1,30 @@ { "brief": "This is a pink noise generator.", "methods": [ - { - "anchor": "PinkNoise_play_", - "name": "play()", - "desc": "Start the generator." - }, - { - "anchor": "PinkNoise_set_", - "name": "set()", - "desc": "Sets amplitude, add and pan position with one method." - }, { "anchor": "PinkNoise_amp_", "name": "amp()", "desc": "Change the amplitude/volume of this sound." }, - { - "anchor": "PinkNoise_add_", - "name": "add()", - "desc": "Offset the output of this generator by a fixed value." - }, { "anchor": "PinkNoise_pan_", "name": "pan()", - "desc": "Pan the generator in a stereo panorama." + "desc": "Move the sound in a stereo panorama." + }, + { + "anchor": "PinkNoise_play_", + "name": "play()", + "desc": "Starts the noise" + }, + { + "anchor": "PinkNoise_set_", + "name": "set()", + "desc": "Set the amplitude and panoramic position with one method." }, { "anchor": "PinkNoise_stop_", "name": "stop()", - "desc": "Stops the Pink Noise generator." + "desc": "Stop the noise from playing back" } ], "csspath": "../../", @@ -37,17 +32,21 @@ "classFields": [], "description": "This is a pink noise generator. Pink Noise has a decrease of 3dB per octave.", "type": "class", - "constructors": ["PinkNoise(parent)"], + "constructors": [ + "PinkNoise(parent)" + ], "related": [], "name": "PinkNoise", "classanchor": "sound/PinkNoise", - "category": "noise", + "category": "Noise", "subcategory": "PinkNoise", "parameters": [ { "name": "parent", "description": "typically use \"this\"", - "type": ["PApplet"] + "type": [ + "PApplet" + ] } ] } diff --git a/content/references/translations/en/sound/PinkNoise_add_.json b/content/references/translations/en/sound/PinkNoise_add_.json deleted file mode 100644 index ab0a73aad..000000000 --- a/content/references/translations/en/sound/PinkNoise_add_.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "brief": "Offset the output of this generator by a fixed value.", - "related": [], - "name": "add()", - "description": "Offset the output of this generator by a fixed value.", - "syntax": [".add(add)"], - "returns": "void", - "type": "method", - "category": "noise", - "subcategory": "PinkNoise", - "classanchor": "PinkNoise", - "parameters": [ - { - "name": "add", - "description": "offset the output of the generator by the given value", - "type": ["float"] - } - ] -} diff --git a/content/references/translations/en/sound/PinkNoise_amp_.json b/content/references/translations/en/sound/PinkNoise_amp_.json index ee5d29dd7..6a975cb47 100644 --- a/content/references/translations/en/sound/PinkNoise_amp_.json +++ b/content/references/translations/en/sound/PinkNoise_amp_.json @@ -3,16 +3,16 @@ "related": [], "name": "amp()", "description": "Change the amplitude/volume of this sound.", - "syntax": [".amp(amp)"], + "syntax": ["soundobject.amp(amp)"], "returns": "void", "type": "method", - "category": "noise", + "category": "Noise", "subcategory": "PinkNoise", "classanchor": "PinkNoise", "parameters": [ { "name": "amp", - "description": "the amplitude of the noise as a value from 0.0 (complete silence) to 1.0 (full volume)", + "description": "A float value between 0.0 (complete silence) and 1.0 (full volume)\n controlling the amplitude/volume of this sound.", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/PinkNoise_pan_.json b/content/references/translations/en/sound/PinkNoise_pan_.json index 44d53de81..c122de7ee 100644 --- a/content/references/translations/en/sound/PinkNoise_pan_.json +++ b/content/references/translations/en/sound/PinkNoise_pan_.json @@ -1,18 +1,18 @@ { - "brief": "Pan the generator in a stereo panorama.", + "brief": "Move the sound in a stereo panorama.", "related": [], "name": "pan()", - "description": "Pan the generator in a stereo panorama. -1.0 pans to the left channel and 1.0 to the right channel.", - "syntax": [".pan(pos)"], + "description": "Move the sound in a stereo panorama.", + "syntax": ["soundobject.pan(pos)"], "returns": "void", "type": "method", - "category": "noise", + "category": "Noise", "subcategory": "PinkNoise", "classanchor": "PinkNoise", "parameters": [ { "name": "pos", - "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0\n (right).", + "description": "The panoramic position of this sound unit as a float from -1.0\n (left) to 1.0 (right).", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/PinkNoise_play_.json b/content/references/translations/en/sound/PinkNoise_play_.json index ab4823211..3ae5ee928 100644 --- a/content/references/translations/en/sound/PinkNoise_play_.json +++ b/content/references/translations/en/sound/PinkNoise_play_.json @@ -1,33 +1,27 @@ { - "brief": "Start the generator.", + "brief": "Starts the noise", "related": [], "name": "play()", - "description": "Start the generator.", + "description": "Starts the noise", "syntax": [ - ".play()", - ".play(amp)", - ".play(amp, pos)", - ".play(amp, add, pos)" + "noise.play(amp)", + "noise.play(amp, pos)", + "noise.play(amp, add, pos)" ], "returns": "void", "type": "method", - "category": "noise", + "category": "Noise", "subcategory": "PinkNoise", "classanchor": "PinkNoise", "parameters": [ { "name": "amp", - "description": "the amplitude of the noise as a value from 0.0 (complete silence) to 1.0 (full volume)", - "type": ["float"] - }, - { - "name": "add", - "description": "offset the output of the noise by given value", + "description": "The amplitude of the noise as a value between 0.0 and 1.0.", "type": ["float"] }, { "name": "pos", - "description": "pan the generator in stereo panorama. Allowed values are between -1.0 and 1.0.", + "description": "The panoramic position of the noise as a float from -1.0 to 1.0.", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/PinkNoise_set_.json b/content/references/translations/en/sound/PinkNoise_set_.json index 5ab4306ef..4e420fbb6 100644 --- a/content/references/translations/en/sound/PinkNoise_set_.json +++ b/content/references/translations/en/sound/PinkNoise_set_.json @@ -1,28 +1,23 @@ { - "brief": "Sets amplitude, add and pan position with one method.", + "brief": "Set the amplitude and panoramic position with one method.", "related": [], "name": "set()", - "description": "Sets amplitude, add and pan position with one method.", - "syntax": [".set(amp, add, pos)"], + "description": "Set the amplitude and panoramic position with one method.", + "syntax": ["noise.set(amp, pos)", "noise.set(amp, add, pos)"], "returns": "void", "type": "method", - "category": "noise", + "category": "Noise", "subcategory": "PinkNoise", "classanchor": "PinkNoise", "parameters": [ { "name": "amp", - "description": "the amplitude of the noise as a value from 0.0 (complete silence) to 1.0 (full volume)", - "type": ["float"] - }, - { - "name": "add", - "description": "offset the output of the noise by given value", + "description": "The amplitude of the noise as a value between 0.0 and 1.0.", "type": ["float"] }, { "name": "pos", - "description": "pan the generator in stereo panorama. Allowed values are between -1.0 and 1.0.", + "description": "The panoramic position of the noise as a float from -1.0 to 1.0.", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/PinkNoise_stop_.json b/content/references/translations/en/sound/PinkNoise_stop_.json index b41adede3..8837c3b7e 100644 --- a/content/references/translations/en/sound/PinkNoise_stop_.json +++ b/content/references/translations/en/sound/PinkNoise_stop_.json @@ -1,12 +1,12 @@ { - "brief": "Stops the Pink Noise generator.", + "brief": "Stop the noise from playing back", "related": [], "name": "stop()", - "description": "Stops the Pink Noise generator.", - "syntax": [".stop()"], + "description": "Stop the noise from playing back", + "syntax": ["noise.stop()"], "returns": "void", "type": "method", - "category": "noise", + "category": "Noise", "subcategory": "PinkNoise", "classanchor": "PinkNoise", "parameters": [] diff --git a/content/references/translations/en/sound/PitchDetector.json b/content/references/translations/en/sound/PitchDetector.json new file mode 100644 index 000000000..4fa49667a --- /dev/null +++ b/content/references/translations/en/sound/PitchDetector.json @@ -0,0 +1,45 @@ +{ + "brief": "Detects the fundamental frequency of a sound signal", + "methods": [ + { + "anchor": "PitchDetector_analyze_", + "name": "analyze()", + "desc": "Detect the fundamental frequency of the input sound signal." + }, + { + "anchor": "PitchDetector_input_", + "name": "input()", + "desc": "Define the audio input for the analyzer." + } + ], + "csspath": "../../", + "isLibrary": "true", + "classFields": [], + "description": "Detects the pitch (also known as the 'fundamental frequency') of a sound \n signal. For complex signals this is not a trivial task, so the analyzer only \n returns a frequency measurement (measured in Hertz) when its measurement \n exceeds a 'confidence level' that can be specified by the user.", + "type": "class", + "constructors": [ + "PitchDetector(parent, minimumConfidence)", + "PitchDetector(parent)" + ], + "related": [], + "name": "PitchDetector", + "classanchor": "sound/PitchDetector", + "category": "Analysis", + "subcategory": "PitchDetector", + "parameters": [ + { + "name": "parent", + "description": "typically \"this\"", + "type": [ + "PApplet" + ] + }, + { + "name": "minimumConfidence", + "description": "the minimum confidence level required for \n frequency measurements, between 0 (accept all measurements, no matter how \n unreliable) to 1 (only accept perfect measurements). Defaults to 0.8.", + "type": [ + "float" + ] + } + ] +} diff --git a/content/references/translations/en/sound/PitchDetector_analyze_.json b/content/references/translations/en/sound/PitchDetector_analyze_.json new file mode 100644 index 000000000..0b1cf94d2 --- /dev/null +++ b/content/references/translations/en/sound/PitchDetector_analyze_.json @@ -0,0 +1,23 @@ +{ + "brief": "Detect the fundamental frequency of the input sound signal.", + "related": [], + "name": "analyze()", + "description": "Returns an estimate of the current pitch (or 'fundamental frequency') of \n the input sound signal, in Hertz. If the confidence in the current \n measurement does not exceed the minimum confidence, this method returns 0.", + "syntax": [ + "pitchdetector.analyze()", + "pitchdetector.analyze(minimumConfidence)", + "pitchdetector.analyze(target)" + ], + "returns": "float", + "type": "method", + "category": "Analysis", + "subcategory": "PitchDetector", + "classanchor": "PitchDetector", + "parameters": [ + { + "name": "minimumConfidence", + "description": "the minimum confidence level required for \n frequency measurements, between 0 (accept all measurements, no matter how \n unreliable) to 1 (only accept perfect measurements). If omitted, uses the \n confidence level specified when this PitchDetector was created.", + "type": ["float"] + } + ] +} diff --git a/content/references/translations/en/sound/PitchDetector_input_.json b/content/references/translations/en/sound/PitchDetector_input_.json new file mode 100644 index 000000000..871f77c2d --- /dev/null +++ b/content/references/translations/en/sound/PitchDetector_input_.json @@ -0,0 +1,19 @@ +{ + "brief": "Define the audio input for the analyzer.", + "related": [], + "name": "input()", + "description": "Define the audio input for the analyzer.", + "syntax": ["analyzer.input(input)"], + "returns": "void", + "type": "method", + "category": "Analysis", + "subcategory": "PitchDetector", + "classanchor": "PitchDetector", + "parameters": [ + { + "name": "input", + "description": "The input sound source", + "type": ["SoundObject"] + } + ] +} diff --git a/content/references/translations/en/sound/Pulse.json b/content/references/translations/en/sound/Pulse.json index eb41a6ea1..4c86ff33e 100644 --- a/content/references/translations/en/sound/Pulse.json +++ b/content/references/translations/en/sound/Pulse.json @@ -2,44 +2,39 @@ "brief": "This is a simple Pulse oscillator.", "methods": [ { - "anchor": "Pulse_width_", - "name": "width()", - "desc": "Changes the pulse width of the pulse oscillator." - }, - { - "anchor": "Pulse_set_", - "name": "set()", - "desc": "Set multiple parameters at once" - }, - { - "anchor": "Pulse_play_", - "name": "play()", - "desc": "Starts the oscillator" + "anchor": "Pulse_amp_", + "name": "amp()", + "desc": "Change the amplitude/volume of this sound." }, { "anchor": "Pulse_freq_", "name": "freq()", - "desc": "Changes the frequency of the pulse oscillator in Hz." + "desc": "Sets the frequency of the oscillator." }, { - "anchor": "Pulse_amp_", - "name": "amp()", - "desc": "Changes the amplitude/volume of the pulse oscillator." + "anchor": "Pulse_pan_", + "name": "pan()", + "desc": "Move the sound in a stereo panorama." }, { - "anchor": "Pulse_add_", - "name": "add()", - "desc": "Offset the output of this generator by given value." + "anchor": "Pulse_play_", + "name": "play()", + "desc": "Starts the oscillator" }, { - "anchor": "Pulse_pan_", - "name": "pan()", - "desc": "Pan the oscillator in a stereo panorama." + "anchor": "Pulse_set_", + "name": "set()", + "desc": "Set multiple parameters at once" }, { "anchor": "Pulse_stop_", "name": "stop()", - "desc": "Stops the Sine Oscillator generator." + "desc": "Stop the oscillator from playing back" + }, + { + "anchor": "Pulse_width_", + "name": "width()", + "desc": "Changes the pulse width of the pulse oscillator." } ], "csspath": "../../", @@ -47,17 +42,21 @@ "classFields": [], "description": "This is a simple Pulse oscillator.", "type": "class", - "constructors": ["Pulse(parent)"], + "constructors": [ + "Pulse(parent)" + ], "related": [], "name": "Pulse", "classanchor": "sound/Pulse", - "category": "oscillators", + "category": "Oscillators", "subcategory": "Pulse", "parameters": [ { "name": "parent", "description": "typically use \"this\"", - "type": ["PApplet"] + "type": [ + "PApplet" + ] } ] } diff --git a/content/references/translations/en/sound/Pulse_add_.json b/content/references/translations/en/sound/Pulse_add_.json deleted file mode 100644 index fd21595a7..000000000 --- a/content/references/translations/en/sound/Pulse_add_.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "brief": "Offset the output of this generator by given value.", - "related": [], - "name": "add()", - "description": "Offset the output of this generator by given value.", - "syntax": [".add(add)"], - "returns": "void", - "type": "method", - "category": "oscillators", - "subcategory": "Pulse", - "classanchor": "Pulse", - "parameters": [ - { - "name": "add", - "description": "Offset the output of the oscillator by given value", - "type": ["float"] - } - ] -} diff --git a/content/references/translations/en/sound/Pulse_amp_.json b/content/references/translations/en/sound/Pulse_amp_.json index 840fbe9cc..c6456f581 100644 --- a/content/references/translations/en/sound/Pulse_amp_.json +++ b/content/references/translations/en/sound/Pulse_amp_.json @@ -1,12 +1,12 @@ { - "brief": "Changes the amplitude/volume of the pulse oscillator.", + "brief": "Change the amplitude/volume of this sound.", "related": [], "name": "amp()", - "description": "Changes the amplitude/volume of the pulse oscillator. Allowed values are between 0.0 and 1.0.", - "syntax": [".amp(amp)"], + "description": "Change the amplitude/volume of this sound.", + "syntax": ["soundobject.amp(amp)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "Pulse", "classanchor": "Pulse", "parameters": [ diff --git a/content/references/translations/en/sound/Pulse_freq_.json b/content/references/translations/en/sound/Pulse_freq_.json index bf4ac795d..407c9fc55 100644 --- a/content/references/translations/en/sound/Pulse_freq_.json +++ b/content/references/translations/en/sound/Pulse_freq_.json @@ -1,18 +1,18 @@ { - "brief": "Changes the frequency of the pulse oscillator in Hz.", + "brief": "Sets the frequency of the oscillator.", "related": [], "name": "freq()", - "description": "Changes the frequency of the pulse oscillator in Hz.", - "syntax": [".freq(freq)"], + "description": "Sets the frequency of the oscillator.", + "syntax": ["oscillator.freq(freq)", "oscillator.freq(modulator)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "Pulse", "classanchor": "Pulse", "parameters": [ { "name": "freq", - "description": "A floating point value of the oscillator in Hz.", + "description": "the desired oscillator frequency in Hertz", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/Pulse_pan_.json b/content/references/translations/en/sound/Pulse_pan_.json index 22b0811e8..78d426fab 100644 --- a/content/references/translations/en/sound/Pulse_pan_.json +++ b/content/references/translations/en/sound/Pulse_pan_.json @@ -1,12 +1,12 @@ { - "brief": "Pan the oscillator in a stereo panorama.", + "brief": "Move the sound in a stereo panorama.", "related": [], "name": "pan()", - "description": "Pan the oscillator in a stereo panorama. -1.0 pans to the left channel and 1.0 to the right channel.", - "syntax": [".pan(pos)"], + "description": "Move the sound in a stereo panorama.", + "syntax": ["soundobject.pan(pos)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "Pulse", "classanchor": "Pulse", "parameters": [ diff --git a/content/references/translations/en/sound/Pulse_play_.json b/content/references/translations/en/sound/Pulse_play_.json index b119eee13..33cfb1ee6 100644 --- a/content/references/translations/en/sound/Pulse_play_.json +++ b/content/references/translations/en/sound/Pulse_play_.json @@ -2,16 +2,15 @@ "brief": "Starts the oscillator", "related": [], "name": "play()", - "description": "Starts the oscillator.", + "description": "Starts the oscillator", "syntax": [ - ".play()", - ".play(freq, amp)", - ".play(freq, amp, add)", - ".play(freq, amp, add, pos)" + "oscillator.play()", + "oscillator.play(freq, amp)", + "oscillator.play(freq, amp, add, pos)" ], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "Pulse", "classanchor": "Pulse", "parameters": [ @@ -25,11 +24,6 @@ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.", "type": ["float"] }, - { - "name": "add", - "description": "Offset the output of the oscillator by given value", - "type": ["float"] - }, { "name": "pos", "description": "The panoramic position of the oscillator as a float from -1.0 to 1.0.", diff --git a/content/references/translations/en/sound/Pulse_set_.json b/content/references/translations/en/sound/Pulse_set_.json index e5da1ee71..3b698bd10 100644 --- a/content/references/translations/en/sound/Pulse_set_.json +++ b/content/references/translations/en/sound/Pulse_set_.json @@ -3,10 +3,10 @@ "related": [], "name": "set()", "description": "Set multiple parameters at once", - "syntax": [".set(freq, width, amp, add, pos)", ".set(freq, amp, add, pos)"], + "syntax": ["pulse.set(freq, width, amp, add, pos)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "Pulse", "classanchor": "Pulse", "parameters": [ diff --git a/content/references/translations/en/sound/Pulse_stop_.json b/content/references/translations/en/sound/Pulse_stop_.json index dd218e0ae..b755b6e93 100644 --- a/content/references/translations/en/sound/Pulse_stop_.json +++ b/content/references/translations/en/sound/Pulse_stop_.json @@ -1,12 +1,12 @@ { - "brief": "Stops the Sine Oscillator generator.", + "brief": "Stop the oscillator from playing back", "related": [], "name": "stop()", - "description": "Stops the Sine Oscillator generator.", - "syntax": [".stop()"], + "description": "Stop the oscillator from playing back", + "syntax": ["oscillator.stop()"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "Pulse", "classanchor": "Pulse", "parameters": [] diff --git a/content/references/translations/en/sound/Pulse_width_.json b/content/references/translations/en/sound/Pulse_width_.json index 2f8db2c33..ec33fbfba 100644 --- a/content/references/translations/en/sound/Pulse_width_.json +++ b/content/references/translations/en/sound/Pulse_width_.json @@ -3,10 +3,10 @@ "related": [], "name": "width()", "description": "Changes the pulse width of the pulse oscillator. Allowed values are between 0.0 and 1.0.", - "syntax": [".width(width)"], + "syntax": ["pulse.width(width)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "Pulse", "classanchor": "Pulse", "parameters": [ diff --git a/content/references/translations/en/sound/Reverb.json b/content/references/translations/en/sound/Reverb.json index 47f2c0bb7..3a625797e 100644 --- a/content/references/translations/en/sound/Reverb.json +++ b/content/references/translations/en/sound/Reverb.json @@ -6,6 +6,11 @@ "name": "damp()", "desc": "Changes the damping factor of the reverb effect." }, + { + "anchor": "Reverb_process_", + "name": "process()", + "desc": "Start the effect." + }, { "anchor": "Reverb_room_", "name": "room()", @@ -16,6 +21,11 @@ "name": "set()", "desc": "Set multiple parameters of the reverb." }, + { + "anchor": "Reverb_stop_", + "name": "stop()", + "desc": "Stop the effect." + }, { "anchor": "Reverb_wet_", "name": "wet()", @@ -27,11 +37,21 @@ "classFields": [], "description": "This is a simple reverb effect.", "type": "class", - "constructors": ["Reverb(parent)"], + "constructors": [ + "Reverb(parent)" + ], "related": [], "name": "Reverb", "classanchor": "sound/Reverb", - "category": "effects", + "category": "Effects", "subcategory": "Reverb", - "parameters": [] + "parameters": [ + { + "name": "parent", + "description": "PApplet: typically use \"this\"", + "type": [ + "PApplet" + ] + } + ] } diff --git a/content/references/translations/en/sound/Reverb_damp_.json b/content/references/translations/en/sound/Reverb_damp_.json index cce95eae3..dc7850c83 100644 --- a/content/references/translations/en/sound/Reverb_damp_.json +++ b/content/references/translations/en/sound/Reverb_damp_.json @@ -3,10 +3,10 @@ "related": [], "name": "damp()", "description": "Changes the damping factor of the reverb effect.", - "syntax": [".damp(damp)"], + "syntax": ["reverb.damp(damp)"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "Reverb", "classanchor": "Reverb", "parameters": [ diff --git a/content/references/translations/en/sound/Reverb_process_.json b/content/references/translations/en/sound/Reverb_process_.json index c781a1395..3f33c3e0d 100644 --- a/content/references/translations/en/sound/Reverb_process_.json +++ b/content/references/translations/en/sound/Reverb_process_.json @@ -1,18 +1,18 @@ { - "brief": "Start the filter.", + "brief": "Start the effect.", "related": [], "name": "process()", - "description": "Start the filter.", - "syntax": [".process(input)"], + "description": "Start the effect.", + "syntax": ["effect.process(input)"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "Reverb", "classanchor": "Reverb", "parameters": [ { "name": "input", - "description": "Input audio source", + "description": "Input sound source", "type": ["SoundObject"] } ] diff --git a/content/references/translations/en/sound/Reverb_room_.json b/content/references/translations/en/sound/Reverb_room_.json index 3764775d3..339a8fa46 100644 --- a/content/references/translations/en/sound/Reverb_room_.json +++ b/content/references/translations/en/sound/Reverb_room_.json @@ -3,10 +3,10 @@ "related": [], "name": "room()", "description": "Change the room size of the reverb effect.", - "syntax": [".room(room)"], + "syntax": ["reverb.room(room)"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "Reverb", "classanchor": "Reverb", "parameters": [ diff --git a/content/references/translations/en/sound/Reverb_set_.json b/content/references/translations/en/sound/Reverb_set_.json index c7de9f189..a02732c2d 100644 --- a/content/references/translations/en/sound/Reverb_set_.json +++ b/content/references/translations/en/sound/Reverb_set_.json @@ -3,10 +3,10 @@ "related": [], "name": "set()", "description": "Set multiple parameters of the reverb. Parameters have to be in the right order.", - "syntax": [".set(room, damp, wet)"], + "syntax": ["reverb.set(room, damp, wet)"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "Reverb", "classanchor": "Reverb", "parameters": [ diff --git a/content/references/translations/en/sound/Reverb_stop_.json b/content/references/translations/en/sound/Reverb_stop_.json index a04071baa..6803d9424 100644 --- a/content/references/translations/en/sound/Reverb_stop_.json +++ b/content/references/translations/en/sound/Reverb_stop_.json @@ -1,12 +1,12 @@ { - "brief": "Stops the reverb.", + "brief": "Stop the effect.", "related": [], "name": "stop()", - "description": "Stops the reverb.", - "syntax": [".stop()"], + "description": "Stop the effect.", + "syntax": ["effect.stop()"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "Reverb", "classanchor": "Reverb", "parameters": [] diff --git a/content/references/translations/en/sound/Reverb_wet_.json b/content/references/translations/en/sound/Reverb_wet_.json index 9bb2ca8cd..22b0d1b2d 100644 --- a/content/references/translations/en/sound/Reverb_wet_.json +++ b/content/references/translations/en/sound/Reverb_wet_.json @@ -3,10 +3,10 @@ "related": [], "name": "wet()", "description": "Change the wet/dry ratio of the reverb.", - "syntax": [".wet(wet)"], + "syntax": ["reverb.wet(wet)"], "returns": "void", "type": "method", - "category": "effects", + "category": "Effects", "subcategory": "Reverb", "classanchor": "Reverb", "parameters": [ diff --git a/content/references/translations/en/sound/SawOsc.json b/content/references/translations/en/sound/SawOsc.json index a6e846458..560c653a7 100644 --- a/content/references/translations/en/sound/SawOsc.json +++ b/content/references/translations/en/sound/SawOsc.json @@ -2,39 +2,34 @@ "brief": "This is a simple Saw Wave Oscillator.", "methods": [ { - "anchor": "SawOsc_play_", - "name": "play()", - "desc": "Starts the oscillator." - }, - { - "anchor": "SawOsc_set_", - "name": "set()", - "desc": "Set multiple parameters at once." + "anchor": "SawOsc_amp_", + "name": "amp()", + "desc": "Change the amplitude/volume of this sound." }, { "anchor": "SawOsc_freq_", "name": "freq()", - "desc": "Set the frequency of the oscillator in Hz." + "desc": "Sets the frequency of the oscillator." }, { - "anchor": "SawOsc_amp_", - "name": "amp()", - "desc": "Changes the amplitude/volume of the saw oscillator." + "anchor": "SawOsc_pan_", + "name": "pan()", + "desc": "Move the sound in a stereo panorama." }, { - "anchor": "SawOsc_add_", - "name": "add()", - "desc": "Offset the output of this generator by given value." + "anchor": "SawOsc_play_", + "name": "play()", + "desc": "Starts the oscillator" }, { - "anchor": "SawOsc_pan_", - "name": "pan()", - "desc": "Move the sound in a stereo panorama." + "anchor": "SawOsc_set_", + "name": "set()", + "desc": "Set multiple parameters at once" }, { "anchor": "SawOsc_stop_", "name": "stop()", - "desc": "Move the sound in a stereo panorama." + "desc": "Stop the oscillator from playing back" } ], "csspath": "../../", @@ -42,17 +37,21 @@ "classFields": [], "description": "This is a simple Saw Wave Oscillator.", "type": "class", - "constructors": ["SawOsc(parent)"], + "constructors": [ + "SawOsc(parent)" + ], "related": [], "name": "SawOsc", "classanchor": "sound/SawOsc", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SawOsc", "parameters": [ { "name": "parent", "description": "typically use \"this\"", - "type": ["PApplet"] + "type": [ + "PApplet" + ] } ] } diff --git a/content/references/translations/en/sound/SawOsc_add_.json b/content/references/translations/en/sound/SawOsc_add_.json deleted file mode 100644 index 5a9a2b74b..000000000 --- a/content/references/translations/en/sound/SawOsc_add_.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "brief": "Offset the output of this generator by given value.", - "related": [], - "name": "add()", - "description": "Offset the output of this generator by given value.", - "syntax": [".add(add)"], - "returns": "void", - "type": "method", - "category": "oscillators", - "subcategory": "SawOsc", - "classanchor": "SawOsc", - "parameters": [ - { - "name": "add", - "description": "Offset the output of the oscillator by given value", - "type": ["float"] - } - ] -} diff --git a/content/references/translations/en/sound/SawOsc_amp_.json b/content/references/translations/en/sound/SawOsc_amp_.json index 1aa23bea6..55cc3009c 100644 --- a/content/references/translations/en/sound/SawOsc_amp_.json +++ b/content/references/translations/en/sound/SawOsc_amp_.json @@ -1,12 +1,12 @@ { - "brief": "Changes the amplitude/volume of the saw oscillator.", + "brief": "Change the amplitude/volume of this sound.", "related": [], "name": "amp()", - "description": "Changes the amplitude/volume of the saw oscillator. Allowed values are between 0.0 and 1.0.", - "syntax": [".amp(amp)"], + "description": "Change the amplitude/volume of this sound.", + "syntax": ["soundobject.amp(amp)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SawOsc", "classanchor": "SawOsc", "parameters": [ diff --git a/content/references/translations/en/sound/SawOsc_freq_.json b/content/references/translations/en/sound/SawOsc_freq_.json index fce297dd6..2f5881893 100644 --- a/content/references/translations/en/sound/SawOsc_freq_.json +++ b/content/references/translations/en/sound/SawOsc_freq_.json @@ -1,18 +1,18 @@ { - "brief": "Set the frequency of the oscillator in Hz.", + "brief": "Sets the frequency of the oscillator.", "related": [], "name": "freq()", - "description": "Set the frequency of the oscillator in Hz.", - "syntax": [".freq(freq)"], + "description": "Sets the frequency of the oscillator.", + "syntax": ["oscillator.freq(freq)", "oscillator.freq(modulator)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SawOsc", "classanchor": "SawOsc", "parameters": [ { "name": "freq", - "description": "A floating point value of the oscillator in Hz.", + "description": "the desired oscillator frequency in Hertz", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/SawOsc_pan_.json b/content/references/translations/en/sound/SawOsc_pan_.json index 380aac50f..489281ee6 100644 --- a/content/references/translations/en/sound/SawOsc_pan_.json +++ b/content/references/translations/en/sound/SawOsc_pan_.json @@ -3,16 +3,16 @@ "related": [], "name": "pan()", "description": "Move the sound in a stereo panorama.", - "syntax": [".pan(pos)"], + "syntax": ["soundobject.pan(pos)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SawOsc", "classanchor": "SawOsc", "parameters": [ { "name": "pos", - "description": "Move the sound in a stereo panorama.\n The panoramic position of this sound unit as a float from -1.0\n (left) to 1.0 (right).", + "description": "The panoramic position of this sound unit as a float from -1.0\n (left) to 1.0 (right).", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/SawOsc_play_.json b/content/references/translations/en/sound/SawOsc_play_.json index e379d071e..1f6c8c174 100644 --- a/content/references/translations/en/sound/SawOsc_play_.json +++ b/content/references/translations/en/sound/SawOsc_play_.json @@ -1,17 +1,16 @@ { - "brief": "Starts the oscillator.", + "brief": "Starts the oscillator", "related": [], "name": "play()", - "description": "Starts the oscillator.", + "description": "Starts the oscillator", "syntax": [ - ".play()", - ".play(freq, amp)", - ".play(freq, amp, add)", - ".play(freq, amp, add, pos)" + "oscillator.play()", + "oscillator.play(freq, amp)", + "oscillator.play(freq, amp, add, pos)" ], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SawOsc", "classanchor": "SawOsc", "parameters": [ @@ -25,11 +24,6 @@ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.", "type": ["float"] }, - { - "name": "add", - "description": "Offset the output of the oscillator by given value", - "type": ["float"] - }, { "name": "pos", "description": "The panoramic position of the oscillator as a float from -1.0 to 1.0.", diff --git a/content/references/translations/en/sound/SawOsc_set_.json b/content/references/translations/en/sound/SawOsc_set_.json index f5c178525..fb8c35860 100644 --- a/content/references/translations/en/sound/SawOsc_set_.json +++ b/content/references/translations/en/sound/SawOsc_set_.json @@ -1,12 +1,12 @@ { - "brief": "Set multiple parameters at once.", + "brief": "Set multiple parameters at once", "related": [], "name": "set()", - "description": "Set multiple parameters at once.", - "syntax": [".set(freq, amp, add, pos)"], + "description": "Set multiple parameters at once", + "syntax": ["oscillator.set(freq, amp, pos)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SawOsc", "classanchor": "SawOsc", "parameters": [ @@ -20,11 +20,6 @@ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.", "type": ["float"] }, - { - "name": "add", - "description": "Offset the output of the oscillator by given value", - "type": ["float"] - }, { "name": "pos", "description": "The panoramic position of the oscillator as a float from -1.0 to 1.0.", diff --git a/content/references/translations/en/sound/SawOsc_stop_.json b/content/references/translations/en/sound/SawOsc_stop_.json index d5c2341a1..959527f69 100644 --- a/content/references/translations/en/sound/SawOsc_stop_.json +++ b/content/references/translations/en/sound/SawOsc_stop_.json @@ -1,12 +1,12 @@ { - "brief": "Move the sound in a stereo panorama.", + "brief": "Stop the oscillator from playing back", "related": [], "name": "stop()", - "description": "Stop the oscillator.", - "syntax": [".stop()"], + "description": "Stop the oscillator from playing back", + "syntax": ["oscillator.stop()"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SawOsc", "classanchor": "SawOsc", "parameters": [] diff --git a/content/references/translations/en/sound/SinOsc.json b/content/references/translations/en/sound/SinOsc.json index ad3ba31e5..c7cbc685e 100644 --- a/content/references/translations/en/sound/SinOsc.json +++ b/content/references/translations/en/sound/SinOsc.json @@ -2,39 +2,34 @@ "brief": "This is a simple Sine Wave Oscillator.", "methods": [ { - "anchor": "SinOsc_play_", - "name": "play()", - "desc": "Starts the oscillator." - }, - { - "anchor": "SinOsc_set_", - "name": "set()", - "desc": "Set multiple parameters at once." + "anchor": "SinOsc_amp_", + "name": "amp()", + "desc": "Change the amplitude/volume of this sound." }, { "anchor": "SinOsc_freq_", "name": "freq()", - "desc": "Set the frequency of the oscillator in Hz." + "desc": "Sets the frequency of the oscillator." }, { - "anchor": "SinOsc_amp_", - "name": "amp()", - "desc": "Changes the amplitude/volume of the sine oscillator." + "anchor": "SinOsc_pan_", + "name": "pan()", + "desc": "Move the sound in a stereo panorama." }, { - "anchor": "SinOsc_add_", - "name": "add()", - "desc": "Offset the output of this generator by given value." + "anchor": "SinOsc_play_", + "name": "play()", + "desc": "Starts the oscillator" }, { - "anchor": "SinOsc_pan_", - "name": "pan()", - "desc": "Pan the oscillator in a stereo panorama." + "anchor": "SinOsc_set_", + "name": "set()", + "desc": "Set multiple parameters at once" }, { "anchor": "SinOsc_stop_", "name": "stop()", - "desc": "Stops the oscillator." + "desc": "Stop the oscillator from playing back" } ], "csspath": "../../", @@ -42,17 +37,21 @@ "classFields": [], "description": "This is a simple Sine Wave Oscillator.", "type": "class", - "constructors": ["SinOsc(parent)"], + "constructors": [ + "SinOsc(parent)" + ], "related": [], "name": "SinOsc", "classanchor": "sound/SinOsc", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SinOsc", "parameters": [ { "name": "parent", "description": "typically use \"this\"", - "type": ["PApplet"] + "type": [ + "PApplet" + ] } ] } diff --git a/content/references/translations/en/sound/SinOsc_add_.json b/content/references/translations/en/sound/SinOsc_add_.json deleted file mode 100644 index 9356e09a7..000000000 --- a/content/references/translations/en/sound/SinOsc_add_.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "brief": "Offset the output of this generator by given value.", - "related": [], - "name": "add()", - "description": "Offset the output of this generator by given value.", - "syntax": [".add(add)"], - "returns": "void", - "type": "method", - "category": "oscillators", - "subcategory": "SinOsc", - "classanchor": "SinOsc", - "parameters": [ - { - "name": "add", - "description": "Offset the output of the oscillator by given value", - "type": ["float"] - } - ] -} diff --git a/content/references/translations/en/sound/SinOsc_amp_.json b/content/references/translations/en/sound/SinOsc_amp_.json index 26835ea6a..cfdc6861d 100644 --- a/content/references/translations/en/sound/SinOsc_amp_.json +++ b/content/references/translations/en/sound/SinOsc_amp_.json @@ -1,12 +1,12 @@ { - "brief": "Changes the amplitude/volume of the sine oscillator.", + "brief": "Change the amplitude/volume of this sound.", "related": [], "name": "amp()", - "description": "Changes the amplitude/volume of the sine oscillator. Allowed values are between 0.0 and 1.0.", - "syntax": [".amp(amp)"], + "description": "Change the amplitude/volume of this sound.", + "syntax": ["soundobject.amp(amp)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SinOsc", "classanchor": "SinOsc", "parameters": [ diff --git a/content/references/translations/en/sound/SinOsc_freq_.json b/content/references/translations/en/sound/SinOsc_freq_.json index 94626c431..19756935b 100644 --- a/content/references/translations/en/sound/SinOsc_freq_.json +++ b/content/references/translations/en/sound/SinOsc_freq_.json @@ -1,18 +1,18 @@ { - "brief": "Set the frequency of the oscillator in Hz.", + "brief": "Sets the frequency of the oscillator.", "related": [], "name": "freq()", - "description": "Set the frequency of the oscillator in Hz.", - "syntax": [".freq(freq)"], + "description": "Sets the frequency of the oscillator.", + "syntax": ["oscillator.freq(freq)", "oscillator.freq(modulator)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SinOsc", "classanchor": "SinOsc", "parameters": [ { "name": "freq", - "description": "A floating point value of the oscillator in Hz.", + "description": "the desired oscillator frequency in Hertz", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/SinOsc_pan_.json b/content/references/translations/en/sound/SinOsc_pan_.json index 24f1c46df..9ebb5ad60 100644 --- a/content/references/translations/en/sound/SinOsc_pan_.json +++ b/content/references/translations/en/sound/SinOsc_pan_.json @@ -1,18 +1,18 @@ { - "brief": "Pan the oscillator in a stereo panorama.", + "brief": "Move the sound in a stereo panorama.", "related": [], "name": "pan()", - "description": "Pan the oscillator in a stereo panorama. -1.0 pans to the left channel and 1.0 to the right channel.", - "syntax": [".pan(pos)"], + "description": "Move the sound in a stereo panorama.", + "syntax": ["soundobject.pan(pos)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SinOsc", "classanchor": "SinOsc", "parameters": [ { "name": "pos", - "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0\n (right).", + "description": "The panoramic position of this sound unit as a float from -1.0\n (left) to 1.0 (right).", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/SinOsc_play_.json b/content/references/translations/en/sound/SinOsc_play_.json index 9aa754522..2c25a0db7 100644 --- a/content/references/translations/en/sound/SinOsc_play_.json +++ b/content/references/translations/en/sound/SinOsc_play_.json @@ -1,17 +1,16 @@ { - "brief": "Starts the oscillator.", + "brief": "Starts the oscillator", "related": [], "name": "play()", - "description": "Starts the oscillator.", + "description": "Starts the oscillator", "syntax": [ - ".play()", - ".play(freq, amp)", - ".play(freq, amp, add)", - ".play(freq, amp, add, pos)" + "oscillator.play()", + "oscillator.play(freq, amp)", + "oscillator.play(freq, amp, add, pos)" ], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SinOsc", "classanchor": "SinOsc", "parameters": [ @@ -25,14 +24,9 @@ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.", "type": ["float"] }, - { - "name": "add", - "description": "Offset the output of the oscillator by given value", - "type": ["float"] - }, { "name": "pos", - "description": "The panoramic position of the oscillator as a float from -1.0 to\n 1.0.", + "description": "The panoramic position of the oscillator as a float from -1.0 to 1.0.", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/SinOsc_set_.json b/content/references/translations/en/sound/SinOsc_set_.json index 5841c378d..fc5daf3da 100644 --- a/content/references/translations/en/sound/SinOsc_set_.json +++ b/content/references/translations/en/sound/SinOsc_set_.json @@ -1,12 +1,12 @@ { - "brief": "Set multiple parameters at once.", + "brief": "Set multiple parameters at once", "related": [], "name": "set()", - "description": "Set multiple parameters at once.", - "syntax": [".set(freq, amp, add, pos)"], + "description": "Set multiple parameters at once", + "syntax": ["oscillator.set(freq, amp, pos)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SinOsc", "classanchor": "SinOsc", "parameters": [ @@ -20,14 +20,9 @@ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.", "type": ["float"] }, - { - "name": "add", - "description": "Offset the output of the oscillator by given value", - "type": ["float"] - }, { "name": "pos", - "description": "The panoramic position of the oscillator as a float from -1.0 to\n 1.0.", + "description": "The panoramic position of the oscillator as a float from -1.0 to 1.0.", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/SinOsc_stop_.json b/content/references/translations/en/sound/SinOsc_stop_.json index 70db78ba2..28b29f2dc 100644 --- a/content/references/translations/en/sound/SinOsc_stop_.json +++ b/content/references/translations/en/sound/SinOsc_stop_.json @@ -1,12 +1,12 @@ { - "brief": "Stops the oscillator.", + "brief": "Stop the oscillator from playing back", "related": [], "name": "stop()", - "description": "Stop the oscillator.", - "syntax": [".stop()"], + "description": "Stop the oscillator from playing back", + "syntax": ["oscillator.stop()"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SinOsc", "classanchor": "SinOsc", "parameters": [] diff --git a/content/references/translations/en/sound/Sound.json b/content/references/translations/en/sound/Sound.json index b1efe9e69..9fc567a7f 100644 --- a/content/references/translations/en/sound/Sound.json +++ b/content/references/translations/en/sound/Sound.json @@ -4,7 +4,7 @@ { "anchor": "Sound_list_", "name": "list()", - "desc": "Print and return information on available audio devices and their number of input/output channels." + "desc": "Shows information about available audio devices" }, { "anchor": "Sound_sampleRate_", @@ -25,6 +25,11 @@ "anchor": "Sound_volume_", "name": "volume()", "desc": "Set the overall output volume of the Processing sound library." + }, + { + "anchor": "Sound_status_", + "name": "status()", + "desc": "Prints information about the sound library's current memory and \n CPU usage" } ], "csspath": "../../", @@ -36,10 +41,10 @@ "Sound(parent)", "Sound(parent, sampleRate, outputDevice, inputDevice, volume)" ], - "related": [], + "related": ["sound/MultiChannel"], "name": "Sound", "classanchor": "sound/Sound", - "category": "configuration", + "category": "Configuration", "subcategory": "Sound", "parameters": [ { diff --git a/content/references/translations/en/sound/SoundFile.json b/content/references/translations/en/sound/SoundFile.json index 46f68eb27..2f7e22bda 100644 --- a/content/references/translations/en/sound/SoundFile.json +++ b/content/references/translations/en/sound/SoundFile.json @@ -65,11 +65,6 @@ "anchor": "SoundFile_rate_", "name": "rate()", "desc": "Set the playback rate of the soundfile." - }, - { - "anchor": "SoundFile_stop_", - "name": "stop()", - "desc": "Stops the playback." } ], "csspath": "../../", @@ -81,7 +76,7 @@ "related": [], "name": "SoundFile", "classanchor": "sound/SoundFile", - "category": "sampling", + "category": "Sampling", "subcategory": "SoundFile", "parameters": [ { diff --git a/content/references/translations/en/sound/SoundFile_add_.json b/content/references/translations/en/sound/SoundFile_add_.json deleted file mode 100644 index 00915f93e..000000000 --- a/content/references/translations/en/sound/SoundFile_add_.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "brief": "Offset the output of the player by the given value.", - "related": [], - "name": "add()", - "description": "Offset the output of the player by the given value.", - "syntax": [".add(add)"], - "returns": "void", - "type": "method", - "category": "sampling", - "subcategory": "SoundFile", - "classanchor": "SoundFile", - "parameters": [ - { - "name": "add", - "description": "offset the output of the player by the given value", - "type": ["float"] - } - ] -} diff --git a/content/references/translations/en/sound/SoundFile_amp_.json b/content/references/translations/en/sound/SoundFile_amp_.json index 858c24376..7a946b3c0 100644 --- a/content/references/translations/en/sound/SoundFile_amp_.json +++ b/content/references/translations/en/sound/SoundFile_amp_.json @@ -3,10 +3,10 @@ "related": [], "name": "amp()", "description": "Change the amplitude/volume of this audiosample.", - "syntax": [".amp(amp)"], + "syntax": ["soundfile.amp(amp)"], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "SoundFile", "classanchor": "SoundFile", "parameters": [ diff --git a/content/references/translations/en/sound/SoundFile_channels_.json b/content/references/translations/en/sound/SoundFile_channels_.json index a1ef4e73e..99aecea73 100644 --- a/content/references/translations/en/sound/SoundFile_channels_.json +++ b/content/references/translations/en/sound/SoundFile_channels_.json @@ -3,10 +3,10 @@ "related": [], "name": "channels()", "description": "Returns the number of channels of the soundfile as an int (1 for mono, 2 for stereo).", - "syntax": [".channels()"], + "syntax": ["soundfile.channels()"], "returns": "int", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "SoundFile", "classanchor": "SoundFile", "parameters": [] diff --git a/content/references/translations/en/sound/SoundFile_cue_.json b/content/references/translations/en/sound/SoundFile_cue_.json index d4ff16908..c970c8c2a 100644 --- a/content/references/translations/en/sound/SoundFile_cue_.json +++ b/content/references/translations/en/sound/SoundFile_cue_.json @@ -3,10 +3,10 @@ "related": [], "name": "cue()", "description": "Cues the playhead to a fixed position in the soundfile. Note that cue() only \n affects the playhead for future calls to play(), but not to loop().", - "syntax": [".cue(time)"], + "syntax": ["soundfile.cue(time)"], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "SoundFile", "classanchor": "SoundFile", "parameters": [ diff --git a/content/references/translations/en/sound/SoundFile_duration_.json b/content/references/translations/en/sound/SoundFile_duration_.json index bea661618..cb86e0e6b 100644 --- a/content/references/translations/en/sound/SoundFile_duration_.json +++ b/content/references/translations/en/sound/SoundFile_duration_.json @@ -3,10 +3,10 @@ "related": [], "name": "duration()", "description": "Returns the duration of the soundfile in seconds.", - "syntax": [".duration()"], + "syntax": ["soundfile.duration()"], "returns": "float", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "SoundFile", "classanchor": "SoundFile", "parameters": [] diff --git a/content/references/translations/en/sound/SoundFile_frames_.json b/content/references/translations/en/sound/SoundFile_frames_.json index 835ee60f0..fa7db4cee 100644 --- a/content/references/translations/en/sound/SoundFile_frames_.json +++ b/content/references/translations/en/sound/SoundFile_frames_.json @@ -3,10 +3,10 @@ "related": [], "name": "frames()", "description": "Returns the number of frames of this soundfile.", - "syntax": [".frames()"], + "syntax": ["soundfile.frames()"], "returns": "int", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "SoundFile", "classanchor": "SoundFile", "parameters": [] diff --git a/content/references/translations/en/sound/SoundFile_isPlaying_.json b/content/references/translations/en/sound/SoundFile_isPlaying_.json index 11c97aad4..906d274ce 100644 --- a/content/references/translations/en/sound/SoundFile_isPlaying_.json +++ b/content/references/translations/en/sound/SoundFile_isPlaying_.json @@ -3,10 +3,10 @@ "related": [], "name": "isPlaying()", "description": "Check whether this soundfile is currently playing.", - "syntax": [".isPlaying()"], + "syntax": ["soundfile.isPlaying()"], "returns": "boolean", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "SoundFile", "classanchor": "SoundFile", "parameters": [] diff --git a/content/references/translations/en/sound/SoundFile_jump_.json b/content/references/translations/en/sound/SoundFile_jump_.json index e23c320ab..7fbc62064 100644 --- a/content/references/translations/en/sound/SoundFile_jump_.json +++ b/content/references/translations/en/sound/SoundFile_jump_.json @@ -3,10 +3,10 @@ "related": [], "name": "jump()", "description": "Jump to a specific position in the soundfile while continuing to play \n (or starting to play if it wasn't playing already).", - "syntax": [".jump(time)"], + "syntax": ["soundfile.jump(time)"], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "SoundFile", "classanchor": "SoundFile", "parameters": [ diff --git a/content/references/translations/en/sound/SoundFile_loop_.json b/content/references/translations/en/sound/SoundFile_loop_.json index 5264076f1..215bb86c4 100644 --- a/content/references/translations/en/sound/SoundFile_loop_.json +++ b/content/references/translations/en/sound/SoundFile_loop_.json @@ -4,15 +4,15 @@ "name": "loop()", "description": "Starts playback which will loop at the end of the soundfile.", "syntax": [ - ".loop()", - ".loop(rate)", - ".loop(rate, amp)", - ".loop(rate, pos, amp)", - ".loop(rate, pos, amp, add)" + "soundfile.loop()", + "soundfile.loop(rate)", + "soundfile.loop(rate, amp)", + "soundfile.loop(rate, pos, amp)", + "soundfile.loop(rate, pos, amp, add)" ], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "SoundFile", "classanchor": "SoundFile", "parameters": [ diff --git a/content/references/translations/en/sound/SoundFile_pan_.json b/content/references/translations/en/sound/SoundFile_pan_.json index e2bdc6527..cf405a90b 100644 --- a/content/references/translations/en/sound/SoundFile_pan_.json +++ b/content/references/translations/en/sound/SoundFile_pan_.json @@ -3,10 +3,10 @@ "related": [], "name": "pan()", "description": "Move the sound in a stereo panorama.-1.0 pans to the left channel and 1.0 to the \n right channel. Note that panning is only supported for mono (1 channel) soundfiles.", - "syntax": [".pan(pos)"], + "syntax": ["soundfile.pan(pos)"], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "SoundFile", "classanchor": "SoundFile", "parameters": [ diff --git a/content/references/translations/en/sound/SoundFile_pause_.json b/content/references/translations/en/sound/SoundFile_pause_.json index 91f60ca08..83024dc24 100644 --- a/content/references/translations/en/sound/SoundFile_pause_.json +++ b/content/references/translations/en/sound/SoundFile_pause_.json @@ -3,10 +3,10 @@ "related": [], "name": "pause()", "description": "Stop the playback of the file, but cue it to the current position. The\n next call to play() will continue playing where it left off.", - "syntax": [".pause()"], + "syntax": ["soundfile.pause()"], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "SoundFile", "classanchor": "SoundFile", "parameters": [] diff --git a/content/references/translations/en/sound/SoundFile_play_.json b/content/references/translations/en/sound/SoundFile_play_.json index 08fde3bbe..6647ac19f 100644 --- a/content/references/translations/en/sound/SoundFile_play_.json +++ b/content/references/translations/en/sound/SoundFile_play_.json @@ -4,16 +4,16 @@ "name": "play()", "description": "Starts the playback of the soundfile. Only plays to the end of the\n audiosample once. If cue() or pause() were called previously, playback \n will resume from the cued position.", "syntax": [ - ".play()", - ".play(rate)", - ".play(rate, amp)", - ".play(rate, pos, amp)", - ".play(rate, pos, amp, add)", - ".play(rate, pos, amp, add, cue)" + "soundfile.play()", + "soundfile.play(rate)", + "soundfile.play(rate, amp)", + "soundfile.play(rate, pos, amp)", + "soundfile.play(rate, pos, amp, add)", + "soundfile.play(rate, pos, amp, add, cue)" ], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "SoundFile", "classanchor": "SoundFile", "parameters": [ diff --git a/content/references/translations/en/sound/SoundFile_rate_.json b/content/references/translations/en/sound/SoundFile_rate_.json index 301c91c12..5d4dc4dd3 100644 --- a/content/references/translations/en/sound/SoundFile_rate_.json +++ b/content/references/translations/en/sound/SoundFile_rate_.json @@ -3,10 +3,10 @@ "related": [], "name": "rate()", "description": "Set the playback rate of the soundfile. 1 is the original speed. 0.5 is half speed \n and one octave down. 2 is double the speed and one octave up.", - "syntax": [".rate(rate)"], + "syntax": ["soundfile.rate(rate)"], "returns": "void", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "SoundFile", "classanchor": "SoundFile", "parameters": [ diff --git a/content/references/translations/en/sound/SoundFile_removeFromCache_.json b/content/references/translations/en/sound/SoundFile_removeFromCache_.json index 22ff5effd..40a2c1d8d 100644 --- a/content/references/translations/en/sound/SoundFile_removeFromCache_.json +++ b/content/references/translations/en/sound/SoundFile_removeFromCache_.json @@ -3,10 +3,10 @@ "related": [], "name": "removeFromCache()", "description": "Remove this SoundFile's decoded audio sample from the cache, allowing\n it to be garbage collected once there are no more references to this\n SoundFile.", - "syntax": [".removeFromCache()"], + "syntax": ["soundfile.removeFromCache()"], "returns": "boolean", "type": "method", - "category": "sampling", + "category": "Sampling", "subcategory": "SoundFile", "classanchor": "SoundFile", "parameters": [] diff --git a/content/references/translations/en/sound/SoundFile_set_.json b/content/references/translations/en/sound/SoundFile_set_.json deleted file mode 100644 index 0ad035fea..000000000 --- a/content/references/translations/en/sound/SoundFile_set_.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "brief": "Set multiple playback parameters of the soundfile at once.", - "related": [], - "name": "set()", - "description": "Set multiple playback parameters of the soundfile at once.", - "syntax": [".set(rate, pos, amp, add)"], - "returns": "void", - "type": "method", - "category": "sampling", - "subcategory": "SoundFile", - "classanchor": "SoundFile", - "parameters": [ - { - "name": "rate", - "description": "relative playback rate to use. 1 is the original speed. 0.5 is half speed and one octave down. 2 is double the speed and one octave up.", - "type": ["float"] - }, - { - "name": "pos", - "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0 (right).", - "type": ["float"] - }, - { - "name": "amp", - "description": "the desired playback amplitude of the audiosample as a value from 0.0 (complete silence) to 1.0 (full volume)", - "type": ["float"] - }, - { - "name": "add", - "description": "offset the output of the generator by the given value", - "type": ["float"] - } - ] -} diff --git a/content/references/translations/en/sound/SoundFile_stop_.json b/content/references/translations/en/sound/SoundFile_stop_.json deleted file mode 100644 index 72eeff845..000000000 --- a/content/references/translations/en/sound/SoundFile_stop_.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "brief": "Stops the playback.", - "related": [], - "name": "stop()", - "description": "Stops the playback.", - "syntax": [".stop()"], - "returns": "void", - "type": "method", - "category": "sampling", - "subcategory": "SoundFile", - "classanchor": "SoundFile", - "parameters": [] -} diff --git a/content/references/translations/en/sound/Sound_inputDevice_.json b/content/references/translations/en/sound/Sound_inputDevice_.json index 6b4f46ce6..1abcb2235 100644 --- a/content/references/translations/en/sound/Sound_inputDevice_.json +++ b/content/references/translations/en/sound/Sound_inputDevice_.json @@ -1,12 +1,12 @@ { "brief": "Choose the device (sound card) which should be used for grabbing audio input using AudioIn.", - "related": [], + "related": ["sound/Sound_list_"], "name": "inputDevice()", "description": "Choose the device (sound card) which should be used for grabbing audio input\n using AudioIn. Note that this setting affects the choice of sound card, which \n is not necessarily the same as the number of the input channel. If your sound \n card has more than one input channel, you can specify which channel to use in\n the constructor of the AudioIn class.", - "syntax": [".inputDevice(deviceId)"], - "returns": "void", + "syntax": ["Sound.inputDevice(deviceId)", "Sound.inputDevice(deviceName)"], + "returns": "int", "type": "method", - "category": "configuration", + "category": "Configuration", "subcategory": "Sound", "classanchor": "Sound", "parameters": [ diff --git a/content/references/translations/en/sound/Sound_list_.json b/content/references/translations/en/sound/Sound_list_.json index 7eb5790ab..bbac948f9 100644 --- a/content/references/translations/en/sound/Sound_list_.json +++ b/content/references/translations/en/sound/Sound_list_.json @@ -1,13 +1,19 @@ { - "brief": "Print and return information on available audio devices and their number of input/output channels.", + "brief": "Shows information about available audio devices", "related": [], "name": "list()", "description": "Print and return information on available audio devices and their number of\n input/output channels.\n Under normal circumstances you will not want to call Sound.list() in \n your actual sketch code, but only for testing to figure out which sound cards \n are available on a new system and how to select them. However, if the order \n of devices on your system is prone to fluctuate from reboot to reboot, you \n can also use the device name array returned by the function to automate device \n selection by name in your own code.", - "syntax": [".list()"], + "syntax": ["Sound.list(filter)", "Sound.list()", "Sound.list(printAll)"], "returns": "String[]", "type": "method", - "category": "configuration", + "category": "Configuration", "subcategory": "Sound", "classanchor": "Sound", - "parameters": [] + "parameters": [ + { + "name": "filter", + "description": "only list audio devices whose device name contains this \n string", + "type": ["String"] + } + ] } diff --git a/content/references/translations/en/sound/Sound_outputDevice_.json b/content/references/translations/en/sound/Sound_outputDevice_.json index 1b8d888ea..8d5c2898a 100644 --- a/content/references/translations/en/sound/Sound_outputDevice_.json +++ b/content/references/translations/en/sound/Sound_outputDevice_.json @@ -1,18 +1,18 @@ { "brief": "Choose the device (sound card) which the Sound library's audio output should be sent to.", - "related": [], + "related": ["sound/Sound_list_"], "name": "outputDevice()", "description": "Choose the device (sound card) which the Sound library's audio output should\n be sent to. The output device should support stereo output (2 channels).", - "syntax": [".outputDevice(deviceId)"], - "returns": "void", + "syntax": ["Sound.outputDevice(deviceId)", "Sound.outputDevice(deviceName)"], + "returns": "int", "type": "method", - "category": "configuration", + "category": "Configuration", "subcategory": "Sound", "classanchor": "Sound", "parameters": [ { "name": "deviceId", - "description": "the device id obtained from list()", + "description": "the device id obtained from Sound.list()", "type": ["int"] } ] diff --git a/content/references/translations/en/sound/Sound_sampleRate_.json b/content/references/translations/en/sound/Sound_sampleRate_.json index 85a9eb74b..9b0b1b57d 100644 --- a/content/references/translations/en/sound/Sound_sampleRate_.json +++ b/content/references/translations/en/sound/Sound_sampleRate_.json @@ -3,10 +3,10 @@ "related": [], "name": "sampleRate()", "description": "Get or set the internal sample rate of the synthesis engine.", - "syntax": [".sampleRate()", ".sampleRate(sampleRate)"], + "syntax": ["Sound.sampleRate()", "Sound.sampleRate(sampleRate)"], "returns": "int", "type": "method", - "category": "configuration", + "category": "Configuration", "subcategory": "Sound", "classanchor": "Sound", "parameters": [ diff --git a/content/references/translations/en/sound/Sound_status_.json b/content/references/translations/en/sound/Sound_status_.json new file mode 100644 index 000000000..610bf33f6 --- /dev/null +++ b/content/references/translations/en/sound/Sound_status_.json @@ -0,0 +1,13 @@ +{ + "brief": "Prints information about the sound library's current memory and \n CPU usage", + "related": [], + "name": "status()", + "description": "Prints information about the sound library's current memory and CPU usage \n to the console.", + "syntax": ["Sound.status()"], + "returns": "void", + "type": "method", + "category": "Configuration", + "subcategory": "Sound", + "classanchor": "Sound", + "parameters": [] +} diff --git a/content/references/translations/en/sound/Sound_volume_.json b/content/references/translations/en/sound/Sound_volume_.json index fc0c3ba9f..e74272802 100644 --- a/content/references/translations/en/sound/Sound_volume_.json +++ b/content/references/translations/en/sound/Sound_volume_.json @@ -3,10 +3,10 @@ "related": [], "name": "volume()", "description": "Set the overall output volume of the Processing sound library.", - "syntax": [".volume(volume)"], + "syntax": ["Sound.volume(volume)"], "returns": "void", "type": "method", - "category": "configuration", + "category": "Configuration", "subcategory": "Sound", "classanchor": "Sound", "parameters": [ diff --git a/content/references/translations/en/sound/SqrOsc.json b/content/references/translations/en/sound/SqrOsc.json index bd6300a18..7bc67fd36 100644 --- a/content/references/translations/en/sound/SqrOsc.json +++ b/content/references/translations/en/sound/SqrOsc.json @@ -2,39 +2,34 @@ "brief": "This is a simple Square Wave Oscillator.", "methods": [ { - "anchor": "SqrOsc_play_", - "name": "play()", - "desc": "Starts the oscillator." - }, - { - "anchor": "SqrOsc_set_", - "name": "set()", - "desc": "Set multiple parameters at once." + "anchor": "SqrOsc_amp_", + "name": "amp()", + "desc": "Change the amplitude/volume of this sound." }, { "anchor": "SqrOsc_freq_", "name": "freq()", - "desc": "Set the frequency of the oscillator in Hz." + "desc": "Sets the frequency of the oscillator." }, { - "anchor": "SqrOsc_amp_", - "name": "amp()", - "desc": "Change the amplitude/volume of of the square oscillator." + "anchor": "SqrOsc_pan_", + "name": "pan()", + "desc": "Move the sound in a stereo panorama." }, { - "anchor": "SqrOsc_add_", - "name": "add()", - "desc": "Offset the output of this generator by given value." + "anchor": "SqrOsc_play_", + "name": "play()", + "desc": "Starts the oscillator" }, { - "anchor": "SqrOsc_pan_", - "name": "pan()", - "desc": "Move the sound in a stereo panorama." + "anchor": "SqrOsc_set_", + "name": "set()", + "desc": "Set multiple parameters at once" }, { "anchor": "SqrOsc_stop_", "name": "stop()", - "desc": "Stop the oscillator." + "desc": "Stop the oscillator from playing back" } ], "csspath": "../../", @@ -42,17 +37,21 @@ "classFields": [], "description": "This is a simple Square Wave Oscillator.", "type": "class", - "constructors": ["SqrOsc(parent)"], + "constructors": [ + "SqrOsc(parent)" + ], "related": [], "name": "SqrOsc", "classanchor": "sound/SqrOsc", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SqrOsc", "parameters": [ { "name": "parent", "description": "typically use \"this\"", - "type": ["PApplet"] + "type": [ + "PApplet" + ] } ] } diff --git a/content/references/translations/en/sound/SqrOsc_add_.json b/content/references/translations/en/sound/SqrOsc_add_.json deleted file mode 100644 index 336804c08..000000000 --- a/content/references/translations/en/sound/SqrOsc_add_.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "brief": "Offset the output of this generator by given value.", - "related": [], - "name": "add()", - "description": "Offset the output of this generator by given value.", - "syntax": [".add(add)"], - "returns": "void", - "type": "method", - "category": "oscillators", - "subcategory": "SqrOsc", - "classanchor": "SqrOsc", - "parameters": [ - { - "name": "add", - "description": "Offset the output of the oscillator by given value", - "type": ["float"] - } - ] -} diff --git a/content/references/translations/en/sound/SqrOsc_amp_.json b/content/references/translations/en/sound/SqrOsc_amp_.json index 906e8080a..ec5060e93 100644 --- a/content/references/translations/en/sound/SqrOsc_amp_.json +++ b/content/references/translations/en/sound/SqrOsc_amp_.json @@ -1,12 +1,12 @@ { - "brief": "Change the amplitude/volume of of the square oscillator.", + "brief": "Change the amplitude/volume of this sound.", "related": [], "name": "amp()", - "description": "Change the amplitude/volume of of the square oscillator. \n Allowed values are between 0.0 and 1.0.", - "syntax": [".amp(amp)"], + "description": "Change the amplitude/volume of this sound.", + "syntax": ["soundobject.amp(amp)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SqrOsc", "classanchor": "SqrOsc", "parameters": [ diff --git a/content/references/translations/en/sound/SqrOsc_freq_.json b/content/references/translations/en/sound/SqrOsc_freq_.json index d6f2ebaa2..53259a64c 100644 --- a/content/references/translations/en/sound/SqrOsc_freq_.json +++ b/content/references/translations/en/sound/SqrOsc_freq_.json @@ -1,18 +1,18 @@ { - "brief": "Set the frequency of the oscillator in Hz.", + "brief": "Sets the frequency of the oscillator.", "related": [], "name": "freq()", - "description": "Set the frequency of the oscillator in Hz.", - "syntax": [".freq(freq)"], + "description": "Sets the frequency of the oscillator.", + "syntax": ["oscillator.freq(freq)", "oscillator.freq(modulator)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SqrOsc", "classanchor": "SqrOsc", "parameters": [ { "name": "freq", - "description": "A floating point value of the oscillator in Hz.", + "description": "the desired oscillator frequency in Hertz", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/SqrOsc_pan_.json b/content/references/translations/en/sound/SqrOsc_pan_.json index 243edbd61..93263484f 100644 --- a/content/references/translations/en/sound/SqrOsc_pan_.json +++ b/content/references/translations/en/sound/SqrOsc_pan_.json @@ -3,10 +3,10 @@ "related": [], "name": "pan()", "description": "Move the sound in a stereo panorama.", - "syntax": [".pan(pos)"], + "syntax": ["soundobject.pan(pos)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SqrOsc", "classanchor": "SqrOsc", "parameters": [ diff --git a/content/references/translations/en/sound/SqrOsc_play_.json b/content/references/translations/en/sound/SqrOsc_play_.json index 51951a9e4..8e0bad020 100644 --- a/content/references/translations/en/sound/SqrOsc_play_.json +++ b/content/references/translations/en/sound/SqrOsc_play_.json @@ -1,17 +1,16 @@ { - "brief": "Starts the oscillator.", + "brief": "Starts the oscillator", "related": [], "name": "play()", - "description": "Starts the oscillator.", + "description": "Starts the oscillator", "syntax": [ - ".play()", - ".play(freq, amp)", - ".play(freq, amp, add)", - ".play(freq, amp, add, pos)" + "oscillator.play()", + "oscillator.play(freq, amp)", + "oscillator.play(freq, amp, add, pos)" ], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SqrOsc", "classanchor": "SqrOsc", "parameters": [ @@ -25,11 +24,6 @@ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.", "type": ["float"] }, - { - "name": "add", - "description": "Offset the output of the oscillator by given value", - "type": ["float"] - }, { "name": "pos", "description": "The panoramic position of the oscillator as a float from -1.0 to 1.0.", diff --git a/content/references/translations/en/sound/SqrOsc_set_.json b/content/references/translations/en/sound/SqrOsc_set_.json index 06cef4f99..d100f482e 100644 --- a/content/references/translations/en/sound/SqrOsc_set_.json +++ b/content/references/translations/en/sound/SqrOsc_set_.json @@ -1,12 +1,12 @@ { - "brief": "Set multiple parameters at once.", + "brief": "Set multiple parameters at once", "related": [], "name": "set()", - "description": "Set multiple parameters at once.", - "syntax": [".set(freq, amp, add, pos)"], + "description": "Set multiple parameters at once", + "syntax": ["oscillator.set(freq, amp, pos)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SqrOsc", "classanchor": "SqrOsc", "parameters": [ @@ -20,11 +20,6 @@ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.", "type": ["float"] }, - { - "name": "add", - "description": "Offset the output of the oscillator by given value", - "type": ["float"] - }, { "name": "pos", "description": "The panoramic position of the oscillator as a float from -1.0 to 1.0.", diff --git a/content/references/translations/en/sound/SqrOsc_stop_.json b/content/references/translations/en/sound/SqrOsc_stop_.json index b57647b68..6362d5c60 100644 --- a/content/references/translations/en/sound/SqrOsc_stop_.json +++ b/content/references/translations/en/sound/SqrOsc_stop_.json @@ -1,12 +1,12 @@ { - "brief": "Stop the oscillator.", + "brief": "Stop the oscillator from playing back", "related": [], "name": "stop()", - "description": "Stop the oscillator.", - "syntax": [".stop()"], + "description": "Stop the oscillator from playing back", + "syntax": ["oscillator.stop()"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "SqrOsc", "classanchor": "SqrOsc", "parameters": [] diff --git a/content/references/translations/en/sound/TriOsc.json b/content/references/translations/en/sound/TriOsc.json index 57905cc19..8b2e7349b 100644 --- a/content/references/translations/en/sound/TriOsc.json +++ b/content/references/translations/en/sound/TriOsc.json @@ -1,58 +1,57 @@ { - "brief": "This is a simple triangle (or \"saw\") wave oscillator.", + "brief": "This is a simple triangle wave oscillator.", "methods": [ { - "anchor": "TriOsc_play_", - "name": "play()", - "desc": "Starts the oscillator." - }, - { - "anchor": "TriOsc_set_", - "name": "set()", - "desc": "Set multiple parameters at once." + "anchor": "TriOsc_amp_", + "name": "amp()", + "desc": "Change the amplitude/volume of this sound." }, { "anchor": "TriOsc_freq_", "name": "freq()", - "desc": "Set the frequency of the oscillator in Hz." + "desc": "Sets the frequency of the oscillator." }, { - "anchor": "TriOsc_amp_", - "name": "amp()", - "desc": "Changes the amplitude/volume of the triangle oscillator." + "anchor": "TriOsc_pan_", + "name": "pan()", + "desc": "Move the sound in a stereo panorama." }, { - "anchor": "TriOsc_add_", - "name": "add()", - "desc": "Offset the output of this generator by given value." + "anchor": "TriOsc_play_", + "name": "play()", + "desc": "Starts the oscillator" }, { - "anchor": "TriOsc_pan_", - "name": "pan()", - "desc": "Move the sound in a stereo panorama." + "anchor": "TriOsc_set_", + "name": "set()", + "desc": "Set multiple parameters at once" }, { "anchor": "TriOsc_stop_", "name": "stop()", - "desc": "Stop the oscillator." + "desc": "Stop the oscillator from playing back" } ], "csspath": "../../", "isLibrary": "true", "classFields": [], - "description": "This is a simple triangle (or \"saw\") wave oscillator.", + "description": "This is a simple triangle wave oscillator.", "type": "class", - "constructors": ["TriOsc(parent)"], + "constructors": [ + "TriOsc(parent)" + ], "related": [], "name": "TriOsc", "classanchor": "sound/TriOsc", - "category": "oscillators", + "category": "Oscillators", "subcategory": "TriOsc", "parameters": [ { "name": "parent", "description": "typically use \"this\"", - "type": ["PApplet"] + "type": [ + "PApplet" + ] } ] } diff --git a/content/references/translations/en/sound/TriOsc_add_.json b/content/references/translations/en/sound/TriOsc_add_.json deleted file mode 100644 index 9e6455f47..000000000 --- a/content/references/translations/en/sound/TriOsc_add_.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "brief": "Offset the output of this generator by given value.", - "related": [], - "name": "add()", - "description": "Offset the output of this generator by given value.", - "syntax": [".add(add)"], - "returns": "void", - "type": "method", - "category": "oscillators", - "subcategory": "TriOsc", - "classanchor": "TriOsc", - "parameters": [ - { - "name": "add", - "description": "Offset the output of the oscillator by given value", - "type": ["float"] - } - ] -} diff --git a/content/references/translations/en/sound/TriOsc_amp_.json b/content/references/translations/en/sound/TriOsc_amp_.json index b371fff2e..6f1e9f38f 100644 --- a/content/references/translations/en/sound/TriOsc_amp_.json +++ b/content/references/translations/en/sound/TriOsc_amp_.json @@ -1,12 +1,12 @@ { - "brief": "Changes the amplitude/volume of the triangle oscillator.", + "brief": "Change the amplitude/volume of this sound.", "related": [], "name": "amp()", - "description": "Changes the amplitude/volume of the triangle oscillator. \n Allowed values are between 0.0 and 1.0.", - "syntax": [".amp(amp)"], + "description": "Change the amplitude/volume of this sound.", + "syntax": ["soundobject.amp(amp)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "TriOsc", "classanchor": "TriOsc", "parameters": [ diff --git a/content/references/translations/en/sound/TriOsc_freq_.json b/content/references/translations/en/sound/TriOsc_freq_.json index dd69a1544..376e4a34d 100644 --- a/content/references/translations/en/sound/TriOsc_freq_.json +++ b/content/references/translations/en/sound/TriOsc_freq_.json @@ -1,18 +1,18 @@ { - "brief": "Set the frequency of the oscillator in Hz.", + "brief": "Sets the frequency of the oscillator.", "related": [], "name": "freq()", - "description": "Set the frequency of the oscillator in Hz.", - "syntax": [".freq(freq)"], + "description": "Sets the frequency of the oscillator.", + "syntax": ["oscillator.freq(freq)", "oscillator.freq(modulator)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "TriOsc", "classanchor": "TriOsc", "parameters": [ { "name": "freq", - "description": "A floating point value of the oscillator in Hz.", + "description": "the desired oscillator frequency in Hertz", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/TriOsc_pan_.json b/content/references/translations/en/sound/TriOsc_pan_.json index 481577205..ce252dfde 100644 --- a/content/references/translations/en/sound/TriOsc_pan_.json +++ b/content/references/translations/en/sound/TriOsc_pan_.json @@ -2,11 +2,11 @@ "brief": "Move the sound in a stereo panorama.", "related": [], "name": "pan()", - "description": "Move the sound in a stereo panorama. -1.0 pans to the left channel and 1.0 to the right channel.", - "syntax": [".pan(pos)"], + "description": "Move the sound in a stereo panorama.", + "syntax": ["soundobject.pan(pos)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "TriOsc", "classanchor": "TriOsc", "parameters": [ diff --git a/content/references/translations/en/sound/TriOsc_play_.json b/content/references/translations/en/sound/TriOsc_play_.json index 98c7bac20..2638fdaef 100644 --- a/content/references/translations/en/sound/TriOsc_play_.json +++ b/content/references/translations/en/sound/TriOsc_play_.json @@ -1,17 +1,16 @@ { - "brief": "Starts the oscillator.", + "brief": "Starts the oscillator", "related": [], "name": "play()", - "description": "Starts the oscillator.", + "description": "Starts the oscillator", "syntax": [ - ".play()", - ".play(freq, amp)", - ".play(freq, amp, add)", - ".play(freq, amp, add, pos)" + "oscillator.play()", + "oscillator.play(freq, amp)", + "oscillator.play(freq, amp, add, pos)" ], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "TriOsc", "classanchor": "TriOsc", "parameters": [ @@ -25,11 +24,6 @@ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.", "type": ["float"] }, - { - "name": "add", - "description": "Offset the output of the oscillator by given value", - "type": ["float"] - }, { "name": "pos", "description": "The panoramic position of the oscillator as a float from -1.0 to 1.0.", diff --git a/content/references/translations/en/sound/TriOsc_set_.json b/content/references/translations/en/sound/TriOsc_set_.json index 849657ee4..a0cac1203 100644 --- a/content/references/translations/en/sound/TriOsc_set_.json +++ b/content/references/translations/en/sound/TriOsc_set_.json @@ -1,12 +1,12 @@ { - "brief": "Set multiple parameters at once.", + "brief": "Set multiple parameters at once", "related": [], "name": "set()", - "description": "Set multiple parameters at once.", - "syntax": [".set(freq, amp, add, pos)"], + "description": "Set multiple parameters at once", + "syntax": ["oscillator.set(freq, amp, pos)"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "TriOsc", "classanchor": "TriOsc", "parameters": [ @@ -20,11 +20,6 @@ "description": "The amplitude of the oscillator as a value between 0.0 and 1.0.", "type": ["float"] }, - { - "name": "add", - "description": "Offset the output of the oscillator by given value", - "type": ["float"] - }, { "name": "pos", "description": "The panoramic position of the oscillator as a float from -1.0 to 1.0.", diff --git a/content/references/translations/en/sound/TriOsc_stop_.json b/content/references/translations/en/sound/TriOsc_stop_.json index 327500e49..d166bcd46 100644 --- a/content/references/translations/en/sound/TriOsc_stop_.json +++ b/content/references/translations/en/sound/TriOsc_stop_.json @@ -1,12 +1,12 @@ { - "brief": "Stop the oscillator.", + "brief": "Stop the oscillator from playing back", "related": [], "name": "stop()", - "description": "Stop the oscillator.", - "syntax": [".stop()"], + "description": "Stop the oscillator from playing back", + "syntax": ["oscillator.stop()"], "returns": "void", "type": "method", - "category": "oscillators", + "category": "Oscillators", "subcategory": "TriOsc", "classanchor": "TriOsc", "parameters": [] diff --git a/content/references/translations/en/sound/Waveform.json b/content/references/translations/en/sound/Waveform.json index b6d5c7407..52209d90d 100644 --- a/content/references/translations/en/sound/Waveform.json +++ b/content/references/translations/en/sound/Waveform.json @@ -1,5 +1,5 @@ { - "brief": "This is a Waveform analyzer.", + "brief": "Inspects the underlying soundwave of an audio signal.", "methods": [ { "anchor": "Waveform_analyze_", @@ -15,24 +15,30 @@ "csspath": "../../", "isLibrary": "true", "classFields": [], - "description": "This is a Waveform analyzer. It returns the waveform of the \n of an audio stream the moment it is queried with the analyze()\n method.", + "description": "This is a Waveform analyzer. It returns the waveform of an \n audio stream the moment it is queried with the analyze()\n method.
\n Note that by default all sound generators (including microphone capture from\n AudioIn) have an amplitude of 1, which means that the values of \n their waveform will be numbers in the range [-0.5, 0.5].", "type": "class", - "constructors": ["Waveform(parent, nsamples)"], + "constructors": [ + "Waveform(parent, nsamples)" + ], "related": [], "name": "Waveform", "classanchor": "sound/Waveform", - "category": "analysis", + "category": "Analysis", "subcategory": "Waveform", "parameters": [ { "name": "parent", "description": "typically use \"this\"", - "type": ["PApplet"] + "type": [ + "PApplet" + ] }, { "name": "nsamples", "description": "number of waveform samples that you want to be able to read at once (a positive integer).", - "type": ["int"] + "type": [ + "int" + ] } ] } diff --git a/content/references/translations/en/sound/Waveform_analyze_.json b/content/references/translations/en/sound/Waveform_analyze_.json index 8746c2df9..509b4a5d4 100644 --- a/content/references/translations/en/sound/Waveform_analyze_.json +++ b/content/references/translations/en/sound/Waveform_analyze_.json @@ -3,10 +3,10 @@ "related": [], "name": "analyze()", "description": "Gets the content of the current audiobuffer from the input source.", - "syntax": [".analyze()", ".analyze(value)"], + "syntax": ["waveform.analyze()", "waveform.analyze(value)"], "returns": "float[]", "type": "method", - "category": "analysis", + "category": "Analysis", "subcategory": "Waveform", "classanchor": "Waveform", "parameters": [ diff --git a/content/references/translations/en/sound/Waveform_input_.json b/content/references/translations/en/sound/Waveform_input_.json index 024f50a2c..5ff062cac 100644 --- a/content/references/translations/en/sound/Waveform_input_.json +++ b/content/references/translations/en/sound/Waveform_input_.json @@ -3,10 +3,10 @@ "related": [], "name": "input()", "description": "Define the audio input for the analyzer.", - "syntax": [".input(input)"], + "syntax": ["waveform.input(input)"], "returns": "void", "type": "method", - "category": "analysis", + "category": "Analysis", "subcategory": "Waveform", "classanchor": "Waveform", "parameters": [ diff --git a/content/references/translations/en/sound/WhiteNoise.json b/content/references/translations/en/sound/WhiteNoise.json index b7b42d80a..375350287 100644 --- a/content/references/translations/en/sound/WhiteNoise.json +++ b/content/references/translations/en/sound/WhiteNoise.json @@ -1,35 +1,30 @@ { "brief": "This is a White Noise Generator.", "methods": [ - { - "anchor": "WhiteNoise_play_", - "name": "play()", - "desc": "Start the generator." - }, - { - "anchor": "WhiteNoise_set_", - "name": "set()", - "desc": "Set multiple parameters at once." - }, { "anchor": "WhiteNoise_amp_", "name": "amp()", "desc": "Change the amplitude/volume of this sound." }, - { - "anchor": "WhiteNoise_add_", - "name": "add()", - "desc": "Offset the output of this generator by a fixed value." - }, { "anchor": "WhiteNoise_pan_", "name": "pan()", "desc": "Move the sound in a stereo panorama." }, + { + "anchor": "WhiteNoise_play_", + "name": "play()", + "desc": "Starts the noise" + }, + { + "anchor": "WhiteNoise_set_", + "name": "set()", + "desc": "Set the amplitude and panoramic position with one method." + }, { "anchor": "WhiteNoise_stop_", "name": "stop()", - "desc": "Stop the generator." + "desc": "Stop the noise from playing back" } ], "csspath": "../../", @@ -37,17 +32,21 @@ "classFields": [], "description": "This is a White Noise Generator. White Noise has a flat spectrum.", "type": "class", - "constructors": ["WhiteNoise(parent)"], + "constructors": [ + "WhiteNoise(parent)" + ], "related": [], "name": "WhiteNoise", "classanchor": "sound/WhiteNoise", - "category": "noise", + "category": "Noise", "subcategory": "WhiteNoise", "parameters": [ { "name": "parent", "description": "typically use \"this\"", - "type": ["PApplet"] + "type": [ + "PApplet" + ] } ] } diff --git a/content/references/translations/en/sound/WhiteNoise_add_.json b/content/references/translations/en/sound/WhiteNoise_add_.json deleted file mode 100644 index 2ae2ac928..000000000 --- a/content/references/translations/en/sound/WhiteNoise_add_.json +++ /dev/null @@ -1,19 +0,0 @@ -{ - "brief": "Offset the output of this generator by a fixed value.", - "related": [], - "name": "add()", - "description": "Offset the output of this generator by a fixed value.", - "syntax": [".add(add)"], - "returns": "void", - "type": "method", - "category": "noise", - "subcategory": "WhiteNoise", - "classanchor": "WhiteNoise", - "parameters": [ - { - "name": "add", - "description": "offset the output of the generator by the given value", - "type": ["float"] - } - ] -} diff --git a/content/references/translations/en/sound/WhiteNoise_amp_.json b/content/references/translations/en/sound/WhiteNoise_amp_.json index 81d69ac08..082a2ceaf 100644 --- a/content/references/translations/en/sound/WhiteNoise_amp_.json +++ b/content/references/translations/en/sound/WhiteNoise_amp_.json @@ -2,17 +2,17 @@ "brief": "Change the amplitude/volume of this sound.", "related": [], "name": "amp()", - "description": "Change the amplitude/volume of this sound. Allowed values are between 0.0 and 1.0.", - "syntax": [".amp(amp)"], + "description": "Change the amplitude/volume of this sound.", + "syntax": ["soundobject.amp(amp)"], "returns": "void", "type": "method", - "category": "noise", + "category": "Noise", "subcategory": "WhiteNoise", "classanchor": "WhiteNoise", "parameters": [ { "name": "amp", - "description": "the amplitude of the noise as a value from 0.0 (complete silence) to 1.0 (full volume)", + "description": "A float value between 0.0 (complete silence) and 1.0 (full volume)\n controlling the amplitude/volume of this sound.", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/WhiteNoise_pan_.json b/content/references/translations/en/sound/WhiteNoise_pan_.json index 3e8c2dfd1..8768d353d 100644 --- a/content/references/translations/en/sound/WhiteNoise_pan_.json +++ b/content/references/translations/en/sound/WhiteNoise_pan_.json @@ -2,17 +2,17 @@ "brief": "Move the sound in a stereo panorama.", "related": [], "name": "pan()", - "description": "Move the sound in a stereo panorama. -1.0 pans to the left channel and 1.0 to the right channel.", - "syntax": [".pan(pos)"], + "description": "Move the sound in a stereo panorama.", + "syntax": ["soundobject.pan(pos)"], "returns": "void", "type": "method", - "category": "noise", + "category": "Noise", "subcategory": "WhiteNoise", "classanchor": "WhiteNoise", "parameters": [ { "name": "pos", - "description": "the panoramic position of this sound unit from -1.0 (left) to 1.0\n (right).", + "description": "The panoramic position of this sound unit as a float from -1.0\n (left) to 1.0 (right).", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/WhiteNoise_play_.json b/content/references/translations/en/sound/WhiteNoise_play_.json index 7849c4e1d..e4e08c18c 100644 --- a/content/references/translations/en/sound/WhiteNoise_play_.json +++ b/content/references/translations/en/sound/WhiteNoise_play_.json @@ -1,33 +1,27 @@ { - "brief": "Start the generator.", + "brief": "Starts the noise", "related": [], "name": "play()", - "description": "Start the generator.", + "description": "Starts the noise", "syntax": [ - ".play()", - ".play(amp)", - ".play(amp, pos)", - ".play(amp, add, pos)" + "noise.play(amp)", + "noise.play(amp, pos)", + "noise.play(amp, add, pos)" ], "returns": "void", "type": "method", - "category": "noise", + "category": "Noise", "subcategory": "WhiteNoise", "classanchor": "WhiteNoise", "parameters": [ { "name": "amp", - "description": "the amplitude of the noise as a value from 0.0 (complete silence) to 1.0 (full volume)", - "type": ["float"] - }, - { - "name": "add", - "description": "offset the output of the noise by given value", + "description": "The amplitude of the noise as a value between 0.0 and 1.0.", "type": ["float"] }, { "name": "pos", - "description": "pan the generator in stereo panorama. Allowed values are between -1.0 and 1.0.", + "description": "The panoramic position of the noise as a float from -1.0 to 1.0.", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/WhiteNoise_set_.json b/content/references/translations/en/sound/WhiteNoise_set_.json index 4b8c417ca..a9eb63017 100644 --- a/content/references/translations/en/sound/WhiteNoise_set_.json +++ b/content/references/translations/en/sound/WhiteNoise_set_.json @@ -1,28 +1,23 @@ { - "brief": "Set multiple parameters at once.", + "brief": "Set the amplitude and panoramic position with one method.", "related": [], "name": "set()", - "description": "Set multiple parameters at once.", - "syntax": [".set(amp, add, pos)"], + "description": "Set the amplitude and panoramic position with one method.", + "syntax": ["noise.set(amp, pos)", "noise.set(amp, add, pos)"], "returns": "void", "type": "method", - "category": "noise", + "category": "Noise", "subcategory": "WhiteNoise", "classanchor": "WhiteNoise", "parameters": [ { "name": "amp", - "description": "the amplitude of the noise as a value from 0.0 (complete silence) to 1.0 (full volume)", - "type": ["float"] - }, - { - "name": "add", - "description": "offset the output of the noise by given value", + "description": "The amplitude of the noise as a value between 0.0 and 1.0.", "type": ["float"] }, { "name": "pos", - "description": "pan the generator in stereo panorama. Allowed values are between -1.0 and 1.0.", + "description": "The panoramic position of the noise as a float from -1.0 to 1.0.", "type": ["float"] } ] diff --git a/content/references/translations/en/sound/WhiteNoise_stop_.json b/content/references/translations/en/sound/WhiteNoise_stop_.json index 9933fdcca..bd2a6ec53 100644 --- a/content/references/translations/en/sound/WhiteNoise_stop_.json +++ b/content/references/translations/en/sound/WhiteNoise_stop_.json @@ -1,12 +1,12 @@ { - "brief": "Stop the generator.", + "brief": "Stop the noise from playing back", "related": [], "name": "stop()", - "description": "Stop the generator.", - "syntax": [".stop()"], + "description": "Stop the noise from playing back", + "syntax": ["noise.stop()"], "returns": "void", "type": "method", - "category": "noise", + "category": "Noise", "subcategory": "WhiteNoise", "classanchor": "WhiteNoise", "parameters": [] diff --git a/content/references/translations/en/video/Capture.json b/content/references/translations/en/video/Capture.json index 4d89d5962..e1988d620 100644 --- a/content/references/translations/en/video/Capture.json +++ b/content/references/translations/en/video/Capture.json @@ -38,6 +38,7 @@ "Capture(parent, width, height)", "Capture(parent, width, height, fps)", "Capture(parent, width, height, device)", + "Capture(parent, device, fps)", "Capture(parent, width, height, device, fps)" ], "related": [], diff --git a/content/references/translations/es/processing/Array.es.json b/content/references/translations/es/processing/Array.es.json index 4bea3c0fa..9f1fc618f 100644 --- a/content/references/translations/es/processing/Array.es.json +++ b/content/references/translations/es/processing/Array.es.json @@ -16,7 +16,11 @@ "description": " Cualquier tipo de dato primitivo o compuesto, incluyendo clases definidas por el usuario", "type": [] }, - { "name": "var", "description": "cualquier nombre de variable válido", "type": [] }, + { + "name": "var", + "description": "cualquier nombre de variable válido", + "type": [] + }, { "name": "element", "description": "int: no debe exceder la longitud del arreglo (length) menos 1", diff --git a/content/references/translations/es/processing/arrayaccess.es.json b/content/references/translations/es/processing/arrayaccess.es.json index c93676009..c3b2e4992 100644 --- a/content/references/translations/es/processing/arrayaccess.es.json +++ b/content/references/translations/es/processing/arrayaccess.es.json @@ -1,5 +1,5 @@ { - "lang": "es" , + "lang": "es", "name": "[] (acceso de arreglos)", "brief": "El operador para acceso de arreglos es usado para especificar una ubicación dentro de un arreglo", "description": "El operador para acceso de arreglos es usado para especificar una ubicación dentro de un arreglo. El dato en esta ubicación puede ser definido con la sintaxis array[element] = value and read with the syntax value = array[element] como se muestra en el ejemplo anterior.\n", @@ -15,7 +15,11 @@ "description": " Cualquier tipo de dato primitivo o compuesto, incluyendo clases definidas por el usuario", "type": [] }, - { "name": "array", "description": "cualquier nombre de variable válido", "type": [] }, + { + "name": "array", + "description": "cualquier nombre de variable válido", + "type": [] + }, { "name": "element", "description": "int: no debe exceder la longitud del arreglo (length) menos 1", diff --git a/content/sitewide/banner.json b/content/sitewide/banner.json index 61f34b5ad..c1660de43 100644 --- a/content/sitewide/banner.json +++ b/content/sitewide/banner.json @@ -1,5 +1,5 @@ { "visible": false, - "text": "We want to hear from you! Take the Processing Community Survey.", - "url": "https://processingfoundation.org/advocacy/community-survey-2022" + "text": "Get a $10k grant and join us in contributing to Processing! Apply before May 31.", + "url": "https://processingfoundation.org/grants" } \ No newline at end of file diff --git a/content/tutorials/text/color/index.mdx b/content/tutorials/text/color/index.mdx index 4f4abce6b..746db849b 100644 --- a/content/tutorials/text/color/index.mdx +++ b/content/tutorials/text/color/index.mdx @@ -130,7 +130,7 @@ rect(0,0,200,40); fill(255,0,0,191); rect(0,50,200,40); -// 55% opacity. +// 50% opacity. fill(255,0,0,127); rect(0,100,200,40); diff --git a/content/tutorials/text/getting-started/Fig_02_01.png b/content/tutorials/text/getting-started/Fig_02_01.png index 013bb85d6..4bf59503c 100644 Binary files a/content/tutorials/text/getting-started/Fig_02_01.png and b/content/tutorials/text/getting-started/Fig_02_01.png differ diff --git a/content/tutorials/text/getting-started/index.es.mdx b/content/tutorials/text/getting-started/index.es.mdx index 7fa6c5a40..ddd49ab97 100644 --- a/content/tutorials/text/getting-started/index.es.mdx +++ b/content/tutorials/text/getting-started/index.es.mdx @@ -9,7 +9,7 @@ coverImage: gettingstarted.png - Este tutorial fue adaptado del libro, [Getting Started with Processing](http://processing-website-user-testing.s3-website-us-east-1.amazonaws.com/download), por Casey Reas y Ben Fry, Maker Media 2015. Si ves algún error o tienes comentarios, por favor [háznoslo saber](https://github.com/processing/processing-docs/issues). + Este tutorial fue adaptado del libro, [Getting Started with Processing](/books/#make:-getting-started-with-processing,-second-edition), por Casey Reas y Ben Fry, Maker Media 2015. Si ves algún error o tienes comentarios, por favor [háznoslo saber](https://github.com/processing/processing-docs/issues). diff --git a/content/tutorials/text/getting-started/index.mdx b/content/tutorials/text/getting-started/index.mdx index 191dbd9a5..dc400b5ec 100644 --- a/content/tutorials/text/getting-started/index.mdx +++ b/content/tutorials/text/getting-started/index.mdx @@ -16,23 +16,19 @@ This tutorial was adapted from the book, [Getting Started with Processing](/book ## Getting started -Welcome to Processing! Start by visiting [https://processing.org/download](https://processing.org/download) and selecting the Mac, Windows, or Linux version, depending on what machine you have. Installation on each machine is straightforward: +Welcome to Processing! -- On Windows, you'll have a .zip file. Double-click it, and drag the folder inside to a location on your hard disk. It could be Program Files or simply the desktop, but the important thing is for the processing folder to be pulled out of that .zip file. Then double-click processing.exe to start. -- The Mac OS X version is also a .zip file. Double-click it and drag the Processing icon to the Applications folder. If you're using someone else's machine and can't modify the Applications folder, just drag the application to the desktop. Then double-click the Processing icon to start. -- The Linux version is a .tar.gz file, which should be familiar to most Linux users. Download the file to your home directory, then open a terminal window, and type: +_Note: For older Processing versions (4.3.4 or earlier), see the [legacy installation instructions](https://github.com/processing/processing4/wiki/Legacy-Installation-Instructions-(pre-4.4)) instead._ - `tar xvfz processing-xxxx.tgz` +To begin, [download the latest version of Processing](https://processing.org/download). - (Replace `xxxx` with the rest of the file's name, which is the version number.) This will create a folder named `processing-2.0` or something similar. Then change to that directory: +- On **Windows**, Processing comes as a `.msi` installer file. Locate the file in your Downloads folder and double-click it to install Processing. +- On **macOS**, Processing comes as a `.dmg` disk image. Open the file from your Downloads folder, then drag the Processing icon to your Applications folder. +- On **Linux** and **Raspberry Pi**, Processing is available on the Snap Store. The download page will redirect you there. Follow the installation instructions on the Snap Store page. - `cd processing-xxxx` +After the installation is complete, launch Processing by double-clicking the icon. On Windows and Linux, you can find it in the Start menu or on your desktop. On macOS, it should be in the Applications folder. - and run it: - - `./processing` - -With any luck, the main Processing window will now be visible. Everyone's setup is different, so if the program didn't start, or you're otherwise stuck, visit the [troubleshooting](https://github.com/processing/processing4/wiki/Troubleshooting) page for possible solutions. +With any luck, the main Processing window will now be visible. However, if the program didn't start, or you're otherwise stuck, visit the [troubleshooting](https://github.com/processing/processing4/wiki/Troubleshooting) page for possible solutions. ![The Processing Development Environment.](./Fig_02_01.png) diff --git a/content/tutorials/text/images-and-pixels/index.mdx b/content/tutorials/text/images-and-pixels/index.mdx index c7e19405b..c653210ba 100644 --- a/content/tutorials/text/images-and-pixels/index.mdx +++ b/content/tutorials/text/images-and-pixels/index.mdx @@ -206,8 +206,8 @@ updatePixels(); First, we should point out something important in the above example. Whenever you are accessing the pixels of a Processing window, you must alert Processing to this activity. This is accomplished with two functions: -- [loadPixels()](http://processing.org/reference/loadPixels_.html) This function is called before you access the pixel array, saying "load the pixels, I would like to speak with them!" -- [updatePixels()](http://processing.org/reference/updatePixels.html) This function is called after you finish with the pixel array saying "Go ahead and update the pixels, I'm all done!" +- [loadPixels()](https://processing.org/reference/loadPixels_.html) This function is called before you access the pixel array, saying "load the pixels, I would like to speak with them!" +- [updatePixels()](https://processing.org/reference/updatePixels_.html) This function is called after you finish with the pixel array saying "Go ahead and update the pixels, I'm all done!" In the above example, because the colors are set randomly, we didn't have to worry about where the pixels are onscreen as we access them, since we are simply setting all the pixels with no regard to their relative location. However, in many image processing applications, the XY location of the pixels themselves is crucial information. A simple example of this might be, set every even column of pixels to white and every odd to black. How could you do this with a one dimensional pixel array? How do you know what column or row any given pixel is in? @@ -223,7 +223,7 @@ In programming with pixels, we need to be able to think of every pixel as living -This may remind you of our [two dimensional arrays tutorial](http://www.processing.org/learning/2darray/). In fact, we'll need to use the same nested for loop technique. The difference is that, although we want to use for loops to think about the pixels in two dimensions, when we go to actually access the pixels, they live in a one dimensional array, and we have to apply the formula from the above illustration. +This may remind you of our [two dimensional arrays tutorial](https://processing.org/tutorials/2darray). In fact, we'll need to use the same nested for loop technique. The difference is that, although we want to use for loops to think about the pixels in two dimensions, when we go to actually access the pixels, they live in a one dimensional array, and we have to apply the formula from the above illustration. Let's look at how it is done. diff --git a/content/tutorials/text/network/index.mdx b/content/tutorials/text/network/index.mdx index 96d2be220..e90589b86 100644 --- a/content/tutorials/text/network/index.mdx +++ b/content/tutorials/text/network/index.mdx @@ -266,5 +266,5 @@ Historically, there have been two basic strands of networked art: art where the ## Notes -[^1]: Alexei Shulgin, “Net.Art – the origin,” Nettime mailing list archives, 18 March 1997, http://nettime.org/Lists-Archives/nettime-l-9703/msg00094.html. +[^1]: Alexei Shulgin, “Net.Art – the origin,” Nettime mailing list archives, 18 March 1997, https://nettime.org/Lists-Archives/nettime-l-9703/msg00094.html. [^2]: Marina Grzinic, “Exposure Time, the Aura, and Telerobotics,” in _The Robot in the Garden: Telerobotics and Telepistemology in the Age of the Internet_, edited by Ken Goldberg (MIT Press, 2000), p. 215. diff --git a/content/tutorials/text/print/index.mdx b/content/tutorials/text/print/index.mdx index 02ed2740f..7ca2eff4b 100644 --- a/content/tutorials/text/print/index.mdx +++ b/content/tutorials/text/print/index.mdx @@ -313,7 +313,6 @@ There are also disadvantages to printing software images. The ability to animate [^2]: Ibid., p. 69. [^3]: Frieder Nake, “Notes on the Programming of Computer Graphics,” In _Cybernetic Serendipity_, edited by Jasia Reichardt (Praeger, 1969), p. 77. [^4]: This work is also credited as _Mural_ in the exhibition catalog _Cybernetic Serendipity_. -[^5]: Rick Poynor, “_Emigre_: An Ending,” Design Observer, 10 November 2005. http://www.designobserver.com/archives/007816.html. - +[^5]: Rick Poynor, “_Emigre_: An Ending,” Design Observer, 10 November 2005. https://archive.ph/lzDeX. [^6]: Lewis Blackwell, _The End of Print: The Graphic Design of David Carson_ (Chronicle Books, 1995), p. 173. [^7]: ICC profiles are files that define the mappings between a print’s data and the specific paper and printer specifications. Well-designed profiles can increase the quality of a print. Check the website of the paper manufacturer to see if it has created one for your printer. diff --git a/content/tutorials/text/pvector/index.mdx b/content/tutorials/text/pvector/index.mdx index 233556892..4cec69328 100644 --- a/content/tutorials/text/pvector/index.mdx +++ b/content/tutorials/text/pvector/index.mdx @@ -73,11 +73,13 @@ void draw() { } ``` -In the above example, we have a very simple world -- a blank canvas with a circular shape (“ball”) traveling around. This “ball” has some properties. +In the above example, we have a very simple world — a blank canvas with a circular shape (“ball”) traveling around. This “ball” has some properties. - LOCATION: x and y - SPEED: xspeed and yspeed - In a more advanced sketch, we could imagine this ball and world having many more properties: + +In a more advanced sketch, we could imagine this ball and world having many more properties: + - ACCELERATION: xacceleration and yacceleration - TARGET LOCATION: xtarget and ytarget - WIND: xwind and ywind @@ -104,7 +106,7 @@ Vector speed; Vectors aren't going to allow us to do anything new. Using vectors won't suddenly make your Processing sketches magically simulate physics, however, they will simplify your code and provide a set of functions for common mathematical operations that happen over and over and over again while programming motion. -As an introduction to vectors, we're going to live in 2 dimensions for quite some time (at least until we get through the first several chapters.) All of these examples can be fairly easily extended to three dimensions (and the class we will use -- [**PVector**](http://processing.org/reference/PVector.html) -- allows for three dimensions.) However, for the time being, it's easier to start with just two. +As an introduction to vectors, we're going to live in 2 dimensions for quite some time (at least until we get through the first several chapters.) All of these examples can be fairly easily extended to three dimensions (and the class we will use — [**PVector**](http://processing.org/reference/PVector.html) — allows for three dimensions.) However, for the time being, it's easier to start with just two. ## Vectors: What are they to us, the Processing programmer? @@ -118,7 +120,7 @@ Here are some vectors and possible translations: -You've probably done this before when programming motion. For every frame of animation (i.e. single cycle through Processing's (http://processing.org/reference/draw_.html)draw()] loop), you instruct each object on the screen to move a certain number of pixels horizontally and a certain number of pixels (vertically). +You've probably done this before when programming motion. For every frame of animation (i.e. single cycle through Processing's [**draw()**](http://processing.org/reference/draw_.html) loop), you instruct each object on the screen to move a certain number of pixels horizontally and a certain number of pixels (vertically). For a Processing programmer, we can now understand a vector as the instructions for moving a shape from point A to point B, an object's “pixel velocity” so to speak. @@ -132,7 +134,7 @@ For every frame: -If velocity is a vector (the difference between two points), what is location? Is it a vector too? Technically, one might argue that location is not a vector, it's not describing the change between two points, it's simply describing a singular point in space -- a location. And so conceptually, we think of a location as different: a single point rather than the difference between two points. +If velocity is a vector (the difference between two points), what is location? Is it a vector too? Technically, one might argue that location is not a vector, it's not describing the change between two points, it's simply describing a singular point in space — a location. And so conceptually, we think of a location as different: a single point rather than the difference between two points. Nevertheless, another way to describe a location is as the path taken from the origin to reach that location. Hence, a location can be represented as the vector giving the difference between location and origin. Therefore, if we were to write code to describe a vector object, instead of creating separate Point and Vector classes, we can use a single class which is more convenient. @@ -143,7 +145,7 @@ location --> x,y velocity --> xspeed,yspeed ``` -Notice how we are storing the same data for both -- two floating point numbers, an x and a y. If we were to write a vector class ourselves, we'd start with something rather basic: +Notice how we are storing the same data for both — two floating point numbers, an x and a y. If we were to write a vector class ourselves, we'd start with something rather basic: ``` class PVector { @@ -177,7 +179,7 @@ PVector location = new PVector(100,100); PVector velocity = new PVector(1,3.3); ``` -Now that we have two vector objects (“location” and “velocity”), we're ready to implement the algorithm for motion -- location = location + velocity. In the bouncing ball example, without vectors, we had: +Now that we have two vector objects (“location” and “velocity”), we're ready to implement the algorithm for motion — location = location + velocity. In the bouncing ball example, without vectors, we had: ``` // Add the current speed to the location. @@ -192,7 +194,7 @@ In an ideal world, we would just be able to rewrite the above to be: location = location + velocity; ``` -However, in Processing, the addition operator '+' is reserved for primitive values (integers, floats, etc.) only. Processing doesn't know how to add two **PVector**](http://processing.org/reference/PVector.html) objects together any more than it knows how to add two PFont objects or PImage objects. Fortunately for us, the [**PVector**](http://processing.org/reference/PVector.html) class is implemented with functions for common mathematical operations. +However, in Processing, the addition operator '+' is reserved for primitive values (integers, floats, etc.) only. Processing doesn't know how to add two [**PVector**](http://processing.org/reference/PVector.html) objects together any more than it knows how to add two PFont objects or PImage objects. Fortunately for us, the [**PVector**](http://processing.org/reference/PVector.html) class is implemented with functions for common mathematical operations. ## Vectors: Addition @@ -268,7 +270,7 @@ Now that we see how add is written inside of [**PVector**](http://processing.org location.add(velocity); ``` -And here we are, ready to successfully complete our first goal -- rewrite the entire bouncing ball example using [**PVector**](http://processing.org/reference/PVector.html). +And here we are, ready to successfully complete our first goal — rewrite the entire bouncing ball example using [**PVector**](http://processing.org/reference/PVector.html). Example: Bouncing Ball with PVector! @@ -311,7 +313,7 @@ void draw() { Now, you might feel somewhat disappointed. After all, this may initially appear to have made the code more complicated than the original version. While this is a perfectly reasonable and valid critique, it's important to understand that we haven't fully realized the power of programming with vectors just yet. Looking at a simple bouncing ball and only implementing vector addition is just the first step. As we move forward into looking at more a complex world of multiple objects and multiple forces (we'll cover forces in the next chapter), the benefits of [**PVector**](http://processing.org/reference/PVector.html) will become more apparent. -We should, however, make note of an important aspect of the above transition to programming with vectors. Even though we are using [**PVector**](http://processing.org/reference/PVector.html) objects to describe two values -- the x and y of location and the x and y of velocity -- we still often need to refer to the x and y components of each [**PVector**](http://processing.org/reference/PVector.html) individually. When we go to draw an object in Processing there's no means for us to say: +We should, however, make note of an important aspect of the above transition to programming with vectors. Even though we are using [**PVector**](http://processing.org/reference/PVector.html) objects to describe two values — the x and y of location and the x and y of velocity — we still often need to refer to the x and y components of each [**PVector**](http://processing.org/reference/PVector.html) individually. When we go to draw an object in Processing there's no means for us to say: ``` ellipse(location,16,16); @@ -372,7 +374,7 @@ and the function inside [**PVector**](http://processing.org/reference/PVector.ht -Following is an example that demonstrates vector subtraction by taking the difference between two points -- the mouse location and the center of the window. +Following is an example that demonstrates vector subtraction by taking the difference between two points — the mouse location and the center of the window. Example: Vector subtraction @@ -421,7 +423,7 @@ The fancy terminology and symbols aside, this is really quite a simple concept. -Moving onto multiplication, we have to think a little bit differently. When we talk about multiplying a vector what we usually mean is **_scaling_** a vector. Maybe we want a vector to be twice its size or one-third its size, etc. In this case, we are saying “Multiply a vector by 2” or “Multiply a vector by 1/3&rquo;. Note we are multiplying a vector by a scalar, a single number, not another vector. +Moving onto multiplication, we have to think a little bit differently. When we talk about multiplying a vector what we usually mean is **_scaling_** a vector. Maybe we want a vector to be twice its size or one-third its size, etc. In this case, we are saying “Multiply a vector by 2” or “Multiply a vector by 1/3”. Note we are multiplying a vector by a scalar, a single number, not another vector. To scale a vector by a single number, we multiply each component (x and y) by that number. @@ -522,7 +524,9 @@ u.div(2); As with addition, basic algebraic rules of multiplication and division apply to vectors. The associative rule: (n\*m)**\*v** = n\*(m**\*v**) + The distributive rule, 2 scalars, 1 vector: (n + m)**\*v** = n**\*v** + m**\*v** + The distributive rule, 2 vectors, 1 scalar : (**u** +**v**)\*n = n**\*u** + n**\*v** @@ -618,7 +622,7 @@ In other words, to normalize a vector, simply divide each component by its magni -In the (http://processing.org/reference/PVector.html)[**PVector**] class, we therefore write our normalization function as follows: +In the [**PVector**](http://processing.org/reference/PVector.html) class, we therefore write our normalization function as follows: ``` void normalize() { @@ -694,7 +698,7 @@ This is Motion 101. - Draw object at location In the bouncing ball example, all of this code happened in Processing's main tab, within [**_setup()_**](http://processing.org/reference/setup_.html) and [**_draw()_**](http://processing.org/reference/draw_.html). What we want to do now is move towards encapsulating all of the logic for motion inside of a [**_class_**](http://processing.org/reference/class.html), this way we can create a foundation for programming moving objects in Processing. We'll take a quick moment to review the basics of object-oriented programming in this context now, but this book will otherwise assume knowledge of working with objects (which will be necessary for just about every example from this point forward). However, if you need a further refresher, I encourage you to check out the [OOP tutorial](http://processing.org/tutorials/objects/). -The driving principle behind object-oriented programming is the bringing together of data and functionality. Take the prototypical OOP example: a car. A car has data -- color, size, speed, etc. A car has functionality -- drive(), turn(), stop(), etc. A car [**_class_**](http://processing.org/reference/class.html) brings all that stuff together in a template from which car instances, i.e. [**_objects_**](http://processing.org/reference/Object.html), are made. The benefit is nicely organized code that makes sense when you read it. +The driving principle behind object-oriented programming is the bringing together of data and functionality. Take the prototypical OOP example: a car. A car has data — color, size, speed, etc. A car has functionality — drive(), turn(), stop(), etc. A car [**_class_**](http://processing.org/reference/class.html) brings all that stuff together in a template from which car instances, i.e. [**_objects_**](http://processing.org/reference/Object.html), are made. The benefit is nicely organized code that makes sense when you read it. ``` Car c = new Car(red,big,fast); @@ -858,7 +862,7 @@ class Mover { } ``` -Ok, at this point, we should feel comfortable with two things -- (1) What is a [**PVector**](http://processing.org/reference/PVector.html)? and (2) How do we use PVectors inside of an object to keep track of its location and movement? This is an excellent first step and deserves an mild round of applause. For standing ovations and screaming fans, however, we need to make one more, somewhat larger, step forward. After all, watching the Motion 101 example is fairly boring -- the circle never speeds up, never slows down, and never turns. For more interesting motion, for motion that appears in the real world around us, we need to add one more PVector to our class -- acceleration. +Ok, at this point, we should feel comfortable with two things — (1) What is a [**PVector**](http://processing.org/reference/PVector.html)? and (2) How do we use PVectors inside of an object to keep track of its location and movement? This is an excellent first step and deserves an mild round of applause. For standing ovations and screaming fans, however, we need to make one more, somewhat larger, step forward. After all, watching the Motion 101 example is fairly boring — the circle never speeds up, never slows down, and never turns. For more interesting motion, for motion that appears in the real world around us, we need to add one more PVector to our class — acceleration. The strict definition of acceleration that we are using here is: **the rate of change of velocity**. Let's think about that definition for a moment. Is this a new concept? Not really. Velocity is defined as: **the rate of change of location**. In essence, we are developing a “trickle down” effect. Acceleration affects velocity which in turn affects location (for some brief foreshadowing, this point will become even more crucial in the next chapter when we see how forces affect acceleration which affects velocity which affects location.) In code, this reads like this: @@ -867,7 +871,7 @@ The strict definition of acceleration that we are using here is: **the rate of c location.add(velocity); ``` -As an exercise, from this point forward, let's make a rule for ourselves. Let's write every example in the rest of this book without ever touching the value of velocity and location (except to initialize them). In other words, our goal now for programming motion is as follows -- come up with an algorithm for how we calculate acceleration and let the trickle down effect work its magic. And so we need to come up with some ways to calculate acceleration: +As an exercise, from this point forward, let's make a rule for ourselves. Let's write every example in the rest of this book without ever touching the value of velocity and location (except to initialize them). In other words, our goal now for programming motion is as follows — come up with an algorithm for how we calculate acceleration and let the trickle down effect work its magic. And so we need to come up with some ways to calculate acceleration: ACCELERATION ALGORITHMS! @@ -921,7 +925,7 @@ This means that when the sketch starts, the object is at rest. We don't have to } ``` -Are you thinking -- “Gosh, those values seem awfully small!” Yes, that's right, they are quite tiny. It's important to realize that our acceleration values (measured in pixels) accumulate into the velocity over time, about thirty times per second depending on our sketch's frame rate. And so to keep the magnitude of the velocity vector within a reasonable range, our acceleration values should remain quite small. We can also help this cause by incorporating the PVector function [limit()](http://processing.org/reference/PVector_limit_.html). +Are you thinking — “Gosh, those values seem awfully small!” Yes, that's right, they are quite tiny. It's important to realize that our acceleration values (measured in pixels) accumulate into the velocity over time, about thirty times per second depending on our sketch's frame rate. And so to keep the magnitude of the velocity vector within a reasonable range, our acceleration values should remain quite small. We can also help this cause by incorporating the PVector function [limit()](http://processing.org/reference/PVector_limit_.html). ``` // The limit() function constrains the magnitude of a vector. @@ -973,7 +977,7 @@ class Mover { } ``` -Ok, algorithm #2 -- “a totally random acceleration.” In this case, instead of initializing acceleration in the object's constructor we want to pick a new acceleration each cycle, i.e. each time update() is called. +Ok, algorithm #2 — “a totally random acceleration.” In this case, instead of initializing acceleration in the object's constructor we want to pick a new acceleration each cycle, i.e. each time update() is called. Example: Motion 101 (velocity and random acceleration) @@ -1125,7 +1129,7 @@ With chaining the above can be written as: ## Vectors: Interactivity -Ok, to finish out this tutorial, let's try something a bit more complex and a great deal more useful. Let's dynamically calculate an object's acceleration according to a rule, acceleration algorithm #4 -- “the object accelerates towards the mouse.” +Ok, to finish out this tutorial, let's try something a bit more complex and a great deal more useful. Let's dynamically calculate an object's acceleration according to a rule, acceleration algorithm #4 — “the object accelerates towards the mouse.” @@ -1141,7 +1145,7 @@ Anytime we want to calculate a vector based on a rule/formula, we need to comput -As illustrated in the above diagram, we see that we can get a vector (dx,dy) by subtracting the object's location from the mouse's location. After all, this is precisely where we started this chapter -- the definition of a vector is “the difference between two points in space!” +As illustrated in the above diagram, we see that we can get a vector (dx,dy) by subtracting the object's location from the mouse's location. After all, this is precisely where we started this chapter — the definition of a vector is “the difference between two points in space!” dx = mouseX - x dy = mouseY - y diff --git a/content/tutorials/text/strings-and-drawing-text/index.mdx b/content/tutorials/text/strings-and-drawing-text/index.mdx index a5c088a8f..e0d295643 100644 --- a/content/tutorials/text/strings-and-drawing-text/index.mdx +++ b/content/tutorials/text/strings-and-drawing-text/index.mdx @@ -43,7 +43,7 @@ Clearly, this would be a royal pain in the Processing behind. It's much simpler String sometext = "How do I make String? Type some characters between quotation marks!"; ``` -It appears from the above that a String is nothing more than a list of characters in between quotes. Nevertheless, this is only the data of a String. We must remember that a String is an object with methods (which you can find on the reference page.) This is just like how we learned in the [Pixels tutorial](http://processing.org/learning/pixels/) that a [PImage](http://processing.org/reference/PImage.html) stores both the data associated with an image as well as functionality: [copy()](http://processing.org/reference/copy_.html), [loadPixels()](http://processing.org/reference/loadPixels_.html), etc. +It appears from the above that a String is nothing more than a list of characters in between quotes. Nevertheless, this is only the data of a String. We must remember that a String is an object with methods (which you can find on the reference page.) This is just like how we learned in the [Pixels tutorial](https://processing.org/tutorials/pixels) that a [PImage](http://processing.org/reference/PImage.html) stores both the data associated with an image as well as functionality: [copy()](http://processing.org/reference/copy_.html), [loadPixels()](http://processing.org/reference/loadPixels_.html), etc. For example, the method [charAt()](http://processing.org/reference/String_charAt_.html) returns the individual character in the String at a given index. Note that Strings are just like arrays in that the first character is index #0! @@ -69,7 +69,17 @@ println(uppercase); You might notice something a bit odd here. Why didn't we simply say `message.toUpperCase()` and then print `message` variable? Instead, we assigned the result of `message.toUpperCase()` to a new variable with a different name—`uppercase`. -This is because a String is a special kind of object. It is immutable. An immutable object is one whose data can never be changed. Once we create a String, it stays the same for life. Anytime we want to change the String, we have to create a new one. So in the case of converting to uppercase, the method `toUpperCase()` returns a copy of the String object with all caps. +This is because a String is a special kind of object. It is immutable. An immutable object is one whose data can never be changed. Once we create a String, it stays the same for life. Anytime we want to change the String, we have to assign it to a variable. + +So in the case of converting to uppercase, the method `toUpperCase()` cannot modify the original String in message. It only returns a *new copy* of the String object with all caps. + +Note that it is possible to use the existing variable `message` to store this new String: + +``` +message = message.toUpperCase(); +``` + +You might be thinking, "Wait, didn’t you just say Strings are immutable?" Yes, that’s true. The code above doesn’t change the original String. Instead, it updates the `message` variable to point to the new String object created by `toUpperCase()`. Without this reassignment (using the `=` operator), the original `message` would remain unchanged. Finally, let's look at [equals()](http://processing.org/reference/String_equals_.html). Now, Strings can be compared with the `==` operator as follows: @@ -319,7 +329,7 @@ In addition to textAlign() and textWidth(), Processing also offers the functions ## Rotating text -[Translation and rotation](http://processing.org/learning/transform2d/) can also be applied to text. For example, to rotate text around its center, translate to an origin point and use `textAlign(CENTER)` before displaying the text. +[Translation and rotation](https://processing.org/tutorials/transform2d) can also be applied to text. For example, to rotate text around its center, translate to an origin point and use `textAlign(CENTER)` before displaying the text. [Example: Rotating Text](http://learningprocessing.com/examples/chp17/example-17-05-rotatetext) @@ -503,7 +513,7 @@ class Letter { } ``` -The character by character method also allows us to display text along a curve. Before we move on to letters, let's first look at how we would draw a series of boxes along a curve. This example makes heavy use of [Trignometry](http://www.processing.org/learning/trig/). +The character by character method also allows us to display text along a curve. Before we move on to letters, let's first look at how we would draw a series of boxes along a curve. This example makes heavy use of [trigonometry](https://processing.org/reference/#math-trigonometry). [Example: Boxes along a curve](http://learningprocessing.com/examples/chp17/example-17-07-boxesoncurve) @@ -566,7 +576,7 @@ void draw() { What we need to do is replace each box with a character from a String that fits inside the box. And since characters all do not have the same width, instead of using a variable `w` that stays constant, each box will have a variable width along the curve according to the `textWidth()` function. -[Example: Characters along a curve](http://www.learningprocessing.com/examples/chapter-17/example-17-8/) +[Example: Characters along a curve](http://learningprocessing.com/examples/chp17/example-17-08-textalongcurve) diff --git a/content/tutorials/video/chromebook-install/cover.png b/content/tutorials/video/chromebook-install/cover.png new file mode 100644 index 000000000..d7f3a89a3 Binary files /dev/null and b/content/tutorials/video/chromebook-install/cover.png differ diff --git a/content/tutorials/video/chromebook-install/index.es.mdx b/content/tutorials/video/chromebook-install/index.es.mdx new file mode 100644 index 000000000..5883f94ec --- /dev/null +++ b/content/tutorials/video/chromebook-install/index.es.mdx @@ -0,0 +1,8 @@ +--- +title: "Instalar Processing en ChromeOS" +author: "Jon Stapleton (CodeVA)" +link: "https://www.youtube.com/watch?v=OteeRNblwxU" +intro: "Cómo instalar el IDE de Processing en ChromeOS usando el subsistema Linux." +coverImage: cover.png +order: "03" +--- \ No newline at end of file diff --git a/content/tutorials/video/chromebook-install/index.mdx b/content/tutorials/video/chromebook-install/index.mdx new file mode 100644 index 000000000..0f488cec5 --- /dev/null +++ b/content/tutorials/video/chromebook-install/index.mdx @@ -0,0 +1,8 @@ +--- +title: "Install Processing on ChromeOS" +author: "Jon Stapleton (CodeVA)" +link: "https://www.youtube.com/watch?v=OteeRNblwxU" +intro: "How to install the Processing IDE on ChromeOS using the Linux subsystem." +coverImage: cover.png +order: "03" +--- diff --git a/content/tutorials/video/debug/index.es.mdx b/content/tutorials/video/debug/index.es.mdx index 33727b9ec..43078ca30 100644 --- a/content/tutorials/video/debug/index.es.mdx +++ b/content/tutorials/video/debug/index.es.mdx @@ -4,5 +4,5 @@ author: "Daniel Shiffman" link: "https://vimeo.com/140134398" intro: "Aprende como pausar y saltar a través de la ejecución de tu código con el Depurador de Processing 3." coverImage: debug.png -order: "03" +order: "02" --- diff --git a/content/tutorials/video/debug/index.mdx b/content/tutorials/video/debug/index.mdx index c7a59ec19..2314aef88 100644 --- a/content/tutorials/video/debug/index.mdx +++ b/content/tutorials/video/debug/index.mdx @@ -2,7 +2,7 @@ title: "Debug" author: "Daniel Shiffman" link: "https://vimeo.com/140134398" -intro: "Learn how to pause and step through your running code with the Processing 3 Debugger." +intro: "Learn how to pause and step through your running code with the Processing Debugger." coverImage: debug.png -order: "03" +order: "02" --- diff --git a/content/tutorials/video/hello-processing/index.es.mdx b/content/tutorials/video/hello-processing/index.es.mdx index 6027383ce..c93f82370 100644 --- a/content/tutorials/video/hello-processing/index.es.mdx +++ b/content/tutorials/video/hello-processing/index.es.mdx @@ -2,7 +2,7 @@ title: "Hola Processing" author: "Daniel Shiffman et al." link: "http://hello.processing.org/" -intro: "Lecciones en videos cortos que introducen ejercicios de programación que encaminan a diseñar programas interactivos de dibujo." +intro: "Introducción rápida para crear una herramienta de dibujo simple. Sin instalar software." coverImage: helloprocessing.png order: "01" --- diff --git a/content/tutorials/video/hello-processing/index.mdx b/content/tutorials/video/hello-processing/index.mdx index b892bd11a..c20515982 100644 --- a/content/tutorials/video/hello-processing/index.mdx +++ b/content/tutorials/video/hello-processing/index.mdx @@ -2,7 +2,7 @@ title: "Hello Processing" author: "Daniel Shiffman et al." link: "http://hello.processing.org/" -intro: "Short video lessons introduce coding exercises that lead to designing an interactive drawing program." +intro: "A quick intro guiding you to create a simple drawing tool. No software install needed." coverImage: helloprocessing.png order: "01" --- diff --git a/content/tutorials/video/learning-processing/index.es.mdx b/content/tutorials/video/learning-processing/index.es.mdx new file mode 100644 index 000000000..4416abbe2 --- /dev/null +++ b/content/tutorials/video/learning-processing/index.es.mdx @@ -0,0 +1,8 @@ +--- +title: "Aprendiendo Processing" +author: "Daniel Shiffman" +link: "https://www.youtube.com/watch?v=4JzDttgdILQ" +intro: "Un curso completo de introducción a Processing, diseñado para principiantes." +coverImage: overview.png +order: "02" +--- diff --git a/content/tutorials/video/learning-processing/index.mdx b/content/tutorials/video/learning-processing/index.mdx new file mode 100644 index 000000000..2f4795b01 --- /dev/null +++ b/content/tutorials/video/learning-processing/index.mdx @@ -0,0 +1,8 @@ +--- +title: "Learning Processing" +author: "Daniel Shiffman" +link: "https://www.youtube.com/watch?v=4JzDttgdILQ" +intro: "A complete introductory course on Processing, designed for complete beginners." +coverImage: overview.png +order: "02" +--- diff --git a/content/tutorials/video/learning-processing/overview.png b/content/tutorials/video/learning-processing/overview.png new file mode 100644 index 000000000..ba6f22b72 Binary files /dev/null and b/content/tutorials/video/learning-processing/overview.png differ diff --git a/content/tutorials/video/welcome-to-processing-3/index.es.mdx b/content/tutorials/video/welcome-to-processing-3/index.es.mdx deleted file mode 100644 index 5a8bf0964..000000000 --- a/content/tutorials/video/welcome-to-processing-3/index.es.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "Bienvenido a Processing 3" -author: "Daniel Shiffman" -link: "https://vimeo.com/140600280" -intro: "¿Qué novedades hay en Processing 3? Dan nos acompaña a través de las nuevas funcionalidades y cambios." -coverImage: overview.png -order: "02" ---- diff --git a/content/tutorials/video/welcome-to-processing-3/index.mdx b/content/tutorials/video/welcome-to-processing-3/index.mdx deleted file mode 100644 index 547bf3529..000000000 --- a/content/tutorials/video/welcome-to-processing-3/index.mdx +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: "Welcome to Processing 3" -author: "Daniel Shiffman" -link: "https://vimeo.com/140600280" -intro: "What's new in Processing 3? Dan walks through the new features and changes." -coverImage: overview.png -order: "02" ---- diff --git a/content/tutorials/video/welcome-to-processing-3/overview.png b/content/tutorials/video/welcome-to-processing-3/overview.png deleted file mode 100644 index 4ee48f29f..000000000 Binary files a/content/tutorials/video/welcome-to-processing-3/overview.png and /dev/null differ diff --git a/docs/books.md b/docs/books.md index 24ac0a5bc..e7452a55f 100644 --- a/docs/books.md +++ b/docs/books.md @@ -22,4 +22,4 @@ language: '' description ``` -Fill in the empty `''` and change 'description' with the appropriate information for the book that you can find [here](https://github.com/processing/processing-docs/blob/master/content/static/books.html) or [here](http://processing-website-user-testing.s3-website-us-east-1.amazonaws.com/books). +Fill in the empty `''` and change 'description' with the appropriate information for the book that you can find [here](https://github.com/processing/processing-docs/blob/master/content/static/books.html). diff --git a/docs/download.md b/docs/download.md index 6e73285fd..5e6922c68 100644 --- a/docs/download.md +++ b/docs/download.md @@ -1,6 +1,6 @@ # Download -In order to specify which releases that should be featured on the website, edit the [`content/download/selected.json`](/content/download/selected.json) file. This file has a list of all featured releases and pre-releases indicated by the `tagName` of the release on GitHub. +In order to specify which releases should be featured on the website, edit the [`content/download/selected.json`](/content/download/selected.json) file. This file has a list of all featured releases and pre-releases indicated by the `tagName` of the release on GitHub. In order to not require an API token on GitHub in development, there is a separate script in [`scripts/fetchReleases.js`](/scripts/fetchReleases.js) that can be run to fetch the releases from GitHub. This script needs to be run before you update the `selected.json` file. diff --git a/docs/examples.md b/docs/examples.md index 5c3364d02..2a414d594 100644 --- a/docs/examples.md +++ b/docs/examples.md @@ -1,18 +1,40 @@ # Examples -The content for the examples lives in `/content/examples` and are nested in folders named after the main category and the subcategory. The actual `.pde` files and the data associated with the Processing sketch are automatically copied from the [`processing-examples`](https://github.com/processing/processing-examples) repo while the rest of the content only live in this repo and should be edited here. +The Processing website features [a selection of code examples](https://processing.org/examples) from the Processing software. -Here is a quick overview of these files for the `Basic Examples > Image > BackgroundImage` example: +The source files for these featured examples are located in `/content/examples`. Before you contribute to the [examples](https://processing.org/examples) page, it is important that you understand where these files come from. In the context of the examples page, there are two kinds of files: -- `/content/examples/BackgroundImage/BackgroundImage.json` - This is the metadata for the example, and this file should be edited in this repo. -- `/content/examples/BackgroundImage/BackgroundImage.png` - This is the image use on page listings and this file should be edited in this repo. -- `/content/examples/BackgroundImage/liveSketch.js` - This is the P5.js live sketch code that runs on the example page, and this file should be edited in this repo. -- `/content/examples/BackgroundImage/BackgroundImage.pde` - This file is synced from the `processing-examples` repo via a script and should **not** be edited in this repo. -- `/static/livesketch/backgroundimage` - This folder is the `data` folder for the example from the `processing-examples` repo and should \**not*8 be edited in this repo. +1. Files specific to the website (like the thumbnail, or the metadata). These files \*should* be edited in this repository. +1. Files automatically copied from the [`processing-examples`](https://github.com/processing/processing-examples) repo. These files should \*not* be edited in this repository. + +For instance, the files for `Basic Examples > Image > BackgroundImage` are located at: + +`/content/examples/Basics/Image/BackgroundImage/` + +That folder contains the following files: + +| File Path | Description | Edit here | +|--------------------------|-------------------------------------------------------------------|------------| +| `BackgroundImage.json` | Content file for the example ([jump to section](#content-file)) | ✅ | +| `BackgroundImage.png` | Cover image used on page listings ([jump to section](#cover-image)) | ✅ | +| `liveSketch.js` | A manual port of the example to p5.js ([jump to section](#live-sketch)) | ✅ | +| `BackgroundImage.pde` | Processing code for the example (code shown on the page) | ❌ | + +Additionally, if the original example had a `Data` folder, the contents of that folder are stored in `/static/livesketch/`. For `BackgroundImage`, you'll see a `/static/livesketch/backgroundimage` folder with a file called `moonwalk.jpg`. Do not edit this file ❌. Files in the `/static/livesketch/` folder are copied from the [`processing-examples`](https://github.com/processing/processing-examples) repo and should \*not* be edited in this repository + +## Which file(s) should edit? + +So you find an issue with an example on the website. Great! You are on your way to improving the Processing documentation and we are immensely grateful for your contribution! Here are the most common situations and the files you should edit. + +### Case 1: Issue with the live sketch +If the sketch running on the website doesn't work as it should, especially if it doesn't match the behavior of the Processing code shown on the page, then you should edit the `livesketch.js` in the corresponding example folder. The live sketch is a manual port of the Processing sketch to p5.js, created by a human. Do \*not* try to edit the `.pde` file. That file is automatically copied from the [`processing-examples`](https://github.com/processing/processing-examples) and does not run in a browser. + +### Case 2: Issue with the code sample +If there is a typo or any error in the code shown on an example page, head over to the [`processing-examples`](https://github.com/processing/processing-examples) repository and [create an issue](https://github.com/processing/processing-examples/issues) describing the problem. You can also submit a pull request with a fix. Check the instructions below on bringing changes from [`processing-examples`](https://github.com/processing/processing-examples) to this repo. ## Updating examples via script -The Processing code for each example is copied via a script from the [`processing-examples`](https://github.com/processing/processing-examples) repo to website. The script will do two things: It will copy all `.pde` files into the `content/examples/TOPIC/SUBTOPIC/EXAMPLE` folder and it will copy all files in the `data` folder of the example into a `static/livesketch/EXAMPLE` folder. This makes it possible for the `liveSketch.js` sketch to load the original data. Some live sketches differ slightly from the original example (such as the AlphaMask example requiring a `.png` file instead of a `.jpg` file) and these files are manually place in the `static/livesketch-manual` folder. +The Processing code for each example is copied via a script from the [`processing-examples`](https://github.com/processing/processing-examples) repo to website. The script will do two things: It will copy all `.pde` files into the `content/examples/TOPIC/SUBTOPIC/EXAMPLE` folder and it will copy all files in the `data` folder of the example into a `static/livesketch/EXAMPLE` folder. This makes it possible for the `liveSketch.js` sketch to load the original data. Some live sketches differ slightly from the original example (such as the AlphaMask example requiring a `.png` file instead of a `.jpg` file) and these files are manually placed in the `static/livesketch-manual` folder. **Note**: The script will only copy examples into the website that already have an existing `.pde` file. This means that the script will only update examples, not add new ones. @@ -53,3 +75,25 @@ This is a new feature of the example pages so you should choose no more than 6 f ## Cover image Each example has an image or animation that comes from P5.js code. The cover should be exported as a `.png` from the original p5.js code from [here](https://github.com/processing/processing-docs/tree/master/content/examples_p5) to a size of `1280px720` (keeping the same proportions than the original sketch). If the example doesn't have a p5.js file, then the upscaling has to be done from the `.pde` files from [here](https://github.com/processing/processing-docs/tree/master/content/examples). The naming of the image it's the same than the content file. + +## Live Sketch +Most examples include a `livesketch.js` file implemented in p5.js, designed to replicate the original Processing sketch's behavior as closely as possible. It allows the example to run in a browser. This file is not automatically generated but must be authored and updated by a contributor. + +### Structure of a Live Sketch + +The code uses instance mode and is encapsulated in a `runLiveSketch()` function. + +All p5.js functions and variables must be accessed using the `s` instance (e.g., `s.createCanvas()`). + +```javascript +function runLiveSketch(s) { + s.setup = () => { + s.createCanvas(640, 360); + // Initialization code + }; + + s.draw = () => { + // Drawing code + }; +} +``` diff --git a/docs/reference.md b/docs/reference.md index cfb4a9513..8efcd51e1 100644 --- a/docs/reference.md +++ b/docs/reference.md @@ -1,71 +1,87 @@ -+# Reference +# Reference -The content for the reference lives inside the `/content/references` folder. This folder has two subfolders: +The content for the reference lives inside [`/content/references`](https://github.com/processing/processing-website/tree/main/content/references). This folder has two subfolders, `translations` and `examples`: -- The `/translations` folder contains a separate folder for every language with `en` being the default one. +## `/translations` -**The `en` folder should never be edited manually since it is auto-generated from the Processing and core libraries source codes.**. This folder is divided into subfolders that correspond to each of the processing libraries and a `processing` folder that contains the core processing reference. +This folder contains a separate folder for every language, with `en` being the default one. Each json file within the folders will be rendered as a web reference page. -The subfolders: +**Most of the files in the `en` folder should not be edited manually since they are auto-generated from Javadoc annotations in the Processing and core libraries source codes using the [Doclet script](https://github.com/processing/processing-doclet/blob/main/README.md).** Web reference files within `en` that are created and edited manually generally fall into one of two categories: -- `/content/references/translations/en/io` -- `/content/references/translations/en/net` -- `/content/references/translations/en/processing` -- `/content/references/translations/en/serial` +- Java documentation: This includes keywords that are NOT part of the Processing API but good to include as a reference for learners. The `+=` or `/=` operators and some Java keywords like `void` or `static` fall into that category for example, as well as Java primitives such as [`int`](https://github.com/processing/processing-website/blob/main/content/references/translations/en/processing/int.json), [`String`](https://github.com/processing/processing-website/blob/main/content/references/translations/en/processing/String.json) etc. The corresponding json files must be edited manually within the `processing-website` repo. +- event callback methods which need to be implemented in sketches (and which don't have corresponding methods inside the processing source code that could be annotated with Javadoc), for example [`captureEvent()`](https://github.com/processing/processing-website/blob/main/content/references/translations/en/video/captureEvent_.json) -are generated from the [Processing 4](https://github.com/processing/processing4) source code. +The folder is divided into subfolders that correspond to each of the core libraries and a `processing` folder that contains the core processing reference. -The subfolder `/content/references/translations/en/sound` is generated from the [Sound](https://github.com/processing/processing-sound) source code. +- Generated from the [`processing4`](https://github.com/processing/processing4) source code: + - `/content/references/translations/en/io` + - `/content/references/translations/en/net` + - `/content/references/translations/en/processing` + - `/content/references/translations/en/serial` +- Generated from the [`processing-sound`](https://github.com/processing/processing-sound) source code: + - `/content/references/translations/en/sound` +- Generated from the [`processing-video`](https://github.com/processing/processing-video) source code: + - `/content/references/translations/en/video` -The subfolder `/content/references/translations/en/video` is generated from the [Video](https://github.com/processing/processing-video) source code. +Libraries DFX Export, PDF Export and SVG Export don't have individual references so their pages are created from Markdown files in [`content/pages/libraries`](https://github.com/processing/processing-website/tree/master/content/pages/libraries). The intro blurbs to each of the core libraries are also found in this folder. -Libraries DFX Export, PDF Export and SVG Export don't have individual references so their pages are created from [here](https://github.com/processing/processing-website/tree/master/content/pages/libraries). +See the [`processing-doclet`](https://github.com/processing/processing-doclet/blob/main/README.md) instructions on how to generate the json files after having made changes to the reference in any of the Java source files. -- The `/examples` folder contains all the examples used inside the references. They are organized in the same folder structure as the `translations` folder. These folders contain all the `.pde` and `.png` files necessary for the examples. Each example image should have a size of `800x800px` and should be named after the corresponding example, e.g. the `bezier_0.pde` example has an image named `bezier_0.png`. +### Javadoc annotations -## Adding content to the english reference +The doclet script converts the Javadoc annotations to a json file for every class, field or method annotated with a `@webref` tag. (Note: [GitHub search only works for files smaller than 384 KB](https://docs.github.com/en/search-github/searching-on-github/searching-code#considerations-for-code-search) which means [PApplet.java](https://github.com/processing/processing4/blob/main/core/src/processing/core/PApplet.java) is NOT searchable using GitHub's code search feature.) -The `content/references/translations/en` folder contains two kinds of json files: -* Processing API documentation: these files are generated from the processing4 repo using the [Doclet script](https://github.com/processing/processing-doclet/blob/main/README.md) as explained below. -* Java documentation: This includes keywords that are NOT part of the Processing API but good to include as a reference for learners. The `+=` or `/=` operators and some Java keywords like `void` or `static` fall into that category for example. The corresponding json files must be edited manually within the `processing-website` repo. +Unlike standard Javadoc (where every method signature gets its own documentation), all methods with the same name are pooled together into one reference page (even static and non-static methods of the same name only get one json file!). Only one of the overloaded methods needs to have a `@webref` tag. The `@` annotations of all methods with the same name will be pooled together in one json file. -In each source file, look for the `@webref` tag in the block comments. This tag means that the block will be picked up by the Doclet script and converted into a json file to be included on the website. Note: [GitHub search only works for files smaller than 384 KB](https://docs.github.com/en/search-github/searching-on-github/searching-code#considerations-for-code-search) which means [PApplet.java](https://github.com/processing/processing4/blob/main/core/src/processing/core/PApplet.java) is NOT searchable using GitHub's code search feature. +A typical Javadoc block will look like this: ``` -/* -* Description +/** +* This is a full length description of this method or field, and what it does. It can be as long or short as you want. * +* Line breaks are ignored, so the first sentence and this one are displayed in the same paragraph. If you want to split the descriptions into paragraphs, use line break tags, like so: +*

+* It is not unusual for descriptions to have more than one paragraph, so go for it. +* +*

Advanced * Advanced description * * @webref category:subcategory -* @webBrief +* @webBrief This is a short description of the method that's shown on the reference index page, and also on the method listing of the class page if this is a class method. +* @param someArg the meaning or purpose of this method argument, allowed range etc. +* @param anotherArg same thing but for another argument +* @return true if one thing is the case, false otherwise +* @see AnotherClass#anotherField +* @see YetAnotherClass#anotherMethod() * ... */ +public boolean someMethod(int someArg, float anotherArg) { +... ``` -**Description:** this should be the main description of the reference. Note: if necessary you can look up the previous reference in the archived XML files located [here](https://github.com/processing/processing-docs/tree/master/content/api_en) under the `` tag. - -**Advanced description:** this is the advanced description that doesn't go on the webpage but in the in the expanded Java documentation. The advanced description starts with an html heading (e.g. `

Advanced:

`). Advanced description always goes below the Description, though not every reference has an advanced description. - -**@webref:** tag that implies the reference goes on the website. It is followed by category and subcategory, if they exist, in the format category:subcategory. The category and subcategory are also in the XML files [here](https://github.com/processing/processing-docs/tree/master/content/api_en) under the and tag. +- **Description:** this should be the main description of the reference. Note: if necessary you can look up the previous reference in the archived XML files located [here](https://github.com/processing/processing-docs/tree/master/content/api_en) under the `` tag. +- **Advanced description:** this is the advanced description that doesn't go on the webpage but in the in the expanded Java documentation. The advanced description starts with an html heading (e.g. `

Advanced:

`). Advanced description always goes below the Description, though not every reference has an advanced description. +- **@webref:** only classes, methods and fields with this tag will have a json file generated for them, and therefore go on the website. It is followed by category and subcategory, if they exist, in the format category:subcategory (the subcategory is optional). The category and subcategory are also in the XML files [here](https://github.com/processing/processing-docs/tree/master/content/api_en) under the and tag. + - for methods that are tagged with `@webref ...:method` a reference page will be created and linked to from the class constructor page, but it will not be included in the web reference index (see for example the methods of [`PVector`](https://processing.org/reference/PVector.html)) +- **@webBrief:** this is the short version of description, just one sentence which is usually the same or very similar to the first sentence of the Description. If the first sentence is too long or doesn't explain the reference, you can change it for a summary of the whole description. +- **@see Classname**, **@see Classname#field**, **@see Classname#method()**: these will be linked to from the *Related* section at the bottom of the reference page. +- **...:** everything else that was already in the comment should stay there below the @webBrief tag -**@webBrief:** this is the short version of description, just one sentence which is usually the first sentence of the Description. If the first sentence is too long or doesn't explain the reference, you can change it for a summary of the whole description. +### Markup tags to use in the Javadoc -**...:** everything else that was already in the comment should stay there below the @webBrief tag +For code-like (i.e. `looking like this`) styling, use `` tags. For emphasis (currently rendered as italics) use ``. -When you are done with your edits to the JavaDoc, commit your changes and follow these steps: +Javadoc tags such as `@inheritDoc` and `@link` are not currently supported. -1. Set up the environment and run the content script following [these instructions](https://github.com/processing/processing-doclet/blob/main/README.md). +## `/examples` -2. [Publish the website](/docs/publish.md) - -Reminder: If you are adding content to the reference that does not live in the `processing` source code (such as Java keywords and operators), you must manually edit the corresponding json files in `content/references/translations/en`. +This folder contains all the examples used inside the references. They are organized in the same folder structure as the `translations` folder. These folders contain all the `.pde` and `.png` files necessary for the examples. Each example image should have a size of `800x800px` and should be named after the corresponding example, e.g. the `bezier_0.pde` example has an image named `bezier_0.png`. ## Adding examples and examples images for references The examples live inside the `/content/references/examples/` folder. The main processing references are inside the folder `processing` and references for the libraries are in separate folders named as the library. For each reference (both for processing and libraries) there needs to be a folder, named exactly as the corresponding json file without the `.json` part (those files are in `/content/references/translations/en/processing`). The file should contain: -- _.pde files_ containing the code for the example. The code for the .pde files could be found either on the reference pages on the current website or in the .xml files [here](https://github.com/processing/processing-docs/tree/master/content/api_en) under the tag `` (each example is under separate tag). Each library has its own folder starting with `LIB_`. +- _.pde files_ containing the code for the example. (The original code for the .pde files migrated from the old web reference could be found either on the reference pages on the current website or in the .xml files [here](https://github.com/processing/processing-docs/tree/master/content/api_en) under the tag `` (each example is under separate tag). Each library has its own folder starting with `LIB_`.) - _.png files_ if examples produce images. Images can be found [here](https://github.com/processing/processing-docs/tree/master/content/api_media). Each example image should have a size of `800x800px`. If the example has an image, then the code used to generate the images needs to be also updated on the corresponding .pde file with the new scales. The .pde and .png file for the same example should be named the same as the reference with the number of the example starting from 0 (e.g. for reference `ammbientLight_` there are `ammbientLight_0.pde` and `ammbientLight_1.pde` and `ammbientLight_0.png` and `ammbientLight_1.png`). For re-scaling the images and updating the examples codes the workflow should be: @@ -80,5 +96,4 @@ If you want to add a translation, copy the `en` folder, rename it to the languag Translations of the `.pde` example files in the reference should be added next to the english version `.pde` files in `content/references/examples`. - 1 [Language codes](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) diff --git a/gatsby-config.js b/gatsby-config.js index 6f2fab254..ee142dc72 100755 --- a/gatsby-config.js +++ b/gatsby-config.js @@ -199,6 +199,13 @@ module.exports = { include: path.resolve(__dirname, 'src/images') } } + }, + { + resolve: 'gatsby-plugin-fathom', + options: { + // Unique site id + siteId: 'DKYMXLKT' + } } ] }; diff --git a/gatsby-node.js b/gatsby-node.js index 64a610f18..beeac84bc 100755 --- a/gatsby-node.js +++ b/gatsby-node.js @@ -59,7 +59,7 @@ exports.createPages = async ({ actions, graphql, reporter }) => { createReference(actions, graphql), createExamples(actions, graphql), createTutorials(actions, graphql), - createDownload(actions, graphql) + createDownloadAndReleases(actions, graphql) ]); }; @@ -357,8 +357,10 @@ async function createExamples(actions, graphql) { Create the download page programmatically since we need access to the selected releases in the pageQuery, thus we need to pass through pageContext. **/ -async function createDownload(actions, graphql) { +async function createDownloadAndReleases(actions, graphql) { const downloadTemplate = path.resolve(`./src/templates/download.js`); + const releasesTemplate = path.resolve(`./src/templates/releases.js`); + const { createPage } = actions; const result = await graphql( ` @@ -390,6 +392,14 @@ async function createDownload(actions, graphql) { selectedPreReleases } }); + createPage({ + path: '/releases', + component: releasesTemplate, + context: { + selectedReleases, + selectedPreReleases + } + }); } /** diff --git a/i18n/react-intl/en.json b/i18n/react-intl/en.json index 558f89ce6..5f6ae473b 100644 --- a/i18n/react-intl/en.json +++ b/i18n/react-intl/en.json @@ -1,6 +1,8 @@ { "home": "Home", "download": "Download", + "main": "Stable", + "beta": "Beta", "documentation": "Documentation", "reference": "Reference", "references": "References", @@ -16,6 +18,7 @@ "about": "About", "overview": "Overview", "people": "People", + "privacy": "Privacy", "donate": "Donate", "search": "Search", "searchWithGoogle": "Search with Google", @@ -29,7 +32,7 @@ "medium": "Medium", "contact": "Contact", "contactText": "Feel free to write us", - "contactEmail": "foundation@processing.org", + "contactEmail": "hello@processing.org", "gettingStarted": "Getting started", "gettingStartedP1": "Download and open the 'Processing' application. Select something from the Examples. Hit the Run button. Lather, rinse, repeat as necessary. More information on using Processing itself is can be found in the environment section of the reference. To learn the Processing language, we recommend you try a few of the built-in examples, and check out the reference. A group of diverse books have been written to help people with different goals and skill levels.", "gettingStartedP2": "To learn the Processing language, we recommend you try a few of the built-in examples, and check out the reference. A group of diverse books have been written to help people with different goals and skill levels. If you're stuck or want to talk about your work, head over to the forum section of the site to find open minds and helpful peers.", @@ -66,19 +69,41 @@ "basicExamples": "Programs about form, data, images, color, typography, and more...", "contactUs": "Contact Us", "contactUsDescription": "Feel free to write us!", - "footer": "Processing is an open project initiated by Ben Fry and Casey Reas. It is developed by a team of volunteers around the world.", + "footer": "Processing is an open project initiated by Ben Fry and Casey Reas. It is developed by a team of contributors around the world.", "overviewIntro": "A short introduction to the Processing software and projects from the community.", - "peopleIntro": "Processing is a community effort led by a small group of volunteers.", + "peopleIntro": "Processing is a community effort led by a small group of contributors.", "booksIntro": "Processing books cover topics from programming basics to visualization. Browse this page to find the right books for you.", + "privacyIntro": "Processing is an open-source project that values your privacy.", "readMore": "Read more", - "downloadIntro": "Processing is available for Linux, Mac, and Windows. Select your choice to download the software below.", - "report": "Report Bugs", - "supported": "Troubleshooting", - "downloadChanges": "Read about the changes in 4.0. This list of revisions covers the differences between releases in detail.", - "earlierReleases": "Earlier releases have been removed because we can only support the current versions of the software. Read about revisions between individual releases.", - "preReleases": "Pre-Releases", - "downloadOutro": "Read about changes in 4.0 since 3.x.", + "downloadTitle": "Create with code, everywhere", + "downloadTitleMeta": "Download Processing", + "downloadIntro": "Processing is open source and is available for macOS, Windows, and Linux. Projects created with Processing are also cross-platform, and can be used on macOS, Windows, Android, Raspberry Pi, and many other Linux platforms.", + "windowsIntelAssetTooltip": "Compatible with Windows 10 and 11.", + "macOsIntelAssetTooltip": "Compatible with Intel processors (Before 2020).", + "macOsSiliconAssetTooltip": "Compatible with M1 and later processors.", + "linuxIntelAssetTooltip": "Tested and supported on Ubuntu, but will work with most major distributions.", + "raspberryPi32AssetTooltip": "Latest version of Raspberry Pi OS is recommended.", + "raspberryPi64AssetTooltip": "Latest version of Raspberry Pi OS is recommended.", + "publishedOn": "Published on", + "macOsIntelWarning": "Got a mac with an Intel Processor? Download the Intel version instead.", + "otherVersions": "Need another version?", + "olderVersions": "Looking for older versions?", + "githubEarlierReleases": "Head over to GitHub for earlier releases of Processing 4.", + "downloadChanges": "The list of revisions covers the differences between releases in detail.", + "earlierReleases": "For older versions (3.5.4 and earlier) see our list of stable releases.", + "getStartedTitle": "Get started", + "getStartedDescription": "Start learning Processing now and create your first program today!", + "tutorialsTitle": "Tutorials", + "tutorialsDescription": "Learn the basics of Processing with our comprehensive tutorials on a wide range of topics!", + "communityTitle": "Join the community", + "communityDescription": "Join our friendly community of learners and creative coders on the Processing forum", + "contributeTitle": "Contribute", + "contributeDescription": "Help make Processing even better. Submit code, examples, libraries, or help us fix bugs.", + "releasesTitle": "Releases", "stable": "Stable Releases", + "preReleases": "Pre-Releases", + "releasesIntro": "Read about changes between Processing 3.0 and Processing 4.0.
The list of revisions covers the differences between releases in detail.", + "releasesOutro": "Note that these legacy releases are provided for archival purposes. We cannot provide support for them. If you need to update your code to work with the last version, please consult the changes page. If you encounter any issues with the current release, please submit a bug report. You can also build older releases from the source code. Note: Android Mode requires Processing 3 or later.", "examplesIntro": "Short, prototypical programs exploring the basics of programming with Processing.", "examplesFilter": "Filter by keywords...", "librariesIntro": "Extend Processing beyond graphics and images into audio, video, and communication with other devices.", @@ -105,7 +130,7 @@ "related": "Related", "notTranslated": "This page is not translated, please refer to the", "englishPage": "english page", - "featured": "Featured functions", + "featured": "Highlighted Features", "relatedExamples": "Related Examples", "exampleInfo": "This example is for Processing 4+. If you have a previous version, use the examples included with your software. If you see any errors or have suggestions, please", "letUsKnow": " let us know", @@ -116,6 +141,7 @@ "notFound": "NOT FOUND", "notFoundText": "You just hit a route that doesn't exist... the sadness.", "and": "and", + "for": "for", "video": "Video", "serial": "Serial", "io": "Hardware I/O", @@ -126,9 +152,10 @@ "dxf": "DXF Export", "openEditor": "Open Editor", "closeEditor": "Close Editor", - "donateIntro": "We need your help! Please support Processing by making a donation to the Processing Foundation. Your donation contributes to software development, education resources like code examples and tutorials, Fellowships, and community events. To be clear, you don't need to donate to use our software. We've always been free, libre, open-source software.", + "donateIntro": "We need your help! Please support Processing by making a donation to the Processing Foundation using the form below. Your donation contributes to software development, education resources like code examples and tutorials, Fellowships, and community events. To be clear, you don't need to donate to use our software. We've always been free, libre, open-source software.", "donateOutro": "The Processing Foundation was established in 2012 after more than a decade of work with the Processing software. The Foundation’s mission is to promote software literacy within the visual arts, and visual literacy within technology-related fields — and to make these fields accessible to diverse communities. Our goal is to empower people of all interests and backgrounds to learn how to program and make creative work with code, especially those who might not otherwise have access to these tools and resources. You can read more about the history of Processing in the short essay 'A Modern Prometheus'.", "donatePaymentTitle": "Donate to Processing", + "donateCryptoInfo": "To donate using crypto, DAF, or stocks, visit our Every.org donation page instead.", "donateButton": "Donate", "donateHelp": "Help us continue with your generosity!", "moreExamples": "More Examples", @@ -413,4 +440,4 @@ "Background Image": "Background Image", "Datatype Conversion": "Datatype Conversion", " ": "" -} +} \ No newline at end of file diff --git a/i18n/react-intl/es.json b/i18n/react-intl/es.json index eab47395a..3d34352f1 100644 --- a/i18n/react-intl/es.json +++ b/i18n/react-intl/es.json @@ -1,6 +1,8 @@ { "home": "Inicio", "download": "Descargar", + "main": "Estable", + "beta": "Beta", "documentation": "Documentación", "reference": "Referencia", "references": "Referencias", @@ -29,7 +31,7 @@ "medium": "Medium", "contact": "Contacto", "contactText": "¡Siéntete libre de escribirnos!", - "contactEmail": "foundation@processing.org", + "contactEmail": "hello@processing.org", "gettingStarted": "Primeros Pasos", "gettingStartedP1": " Descarga y abre la aplicación ‘Processing'. Selecciona algún ejemplo de Ejemplos. Presiona el botón Correr. Lava, enjuaga y repite tantas veces como sea necesario. Más información acerca del uso de Processing puede ser encontrada en la sección entorno de la referencia. Para aprender el lenguaje Processing, nosotros te recomendamos que intentes unos cuantos ejemplos, y que cheques la referencia. Un grupo variado de libros han sido escritos para ayudar a las personas de acuerdo a sus metas y habilidades.", "gettingStartedP2": "Para aprender el lenguaje Processing, te recomendamos que intentes algunos cuantos de los ejemplos incluidos, y cheques la referencia. Un grupo de diversos libros han sido escritos para ayudar a gente con diferentes metas y niveles. Si estas atorado o quieres hablar acerca de tu trabajo, dirígete a la sección del foro y encontrarás gente con la mente abierta y colegas que te podrán ayudar.", @@ -66,19 +68,41 @@ "basicExamples": "Programas sobre formas, datos, imágenes, colores, tipografía y más...", "contactUs": "Contáctanos", "contactUsDescription": "¡Siéntete libre de escribirnos!", - "footer": "Processing es un proyecto abierto iniciado por Ben Fry y Casey Reas. Es desarrollado por un equipo de voluntarios alrededor del mundo.", + "footer": "Processing es un proyecto abierto iniciado por Ben Fry y Casey Reas. Es desarrollado por un equipo de colaboradores alrededor del mundo.", "overviewIntro": "Una pequeña introducción al software Processing y a los proyectos de la comunidad.", - "peopleIntro": "Processing es un esfuerzo comunitario lidereado por un pequeño grupo de voluntarios.", + "peopleIntro": "Processing es un esfuerzo comunitario lidereado por un pequeño grupo de colaboradores.", "booksIntro": "Los libros sobre Processing cubren temas desde los principios básicos de programación a la visualización. Navega esta pagina para encontrar un libro adecuado para ti.", + "privacyIntro": "Processing es un proyecto de código abierto que valora tu privacidad. Lee más acerca de nuestra política de privacidad.", "readMore": "Leer más", - "downloadIntro": "Processing esta disponible para Linux, Mac OS X, y Windows. Selecciona la version de software correspondiente abajo.", - "report": "Reporta Bugs", - "supported": "Plataformas soportadas", - "downloadChanges": "Lee acerca de los cambios en la versión 3.0. La lista de revisiones cubre las diferencias entre versiones a detalle.", - "earlierReleases": "Los lanzamientos previos han sido removidos debido a que sólo podemos soportar la versión actual del software. Para actualizar el código viejo, lee la página de Cambios . Los cambios de cada lanzamiento pueden ser encontrados en revisions.txt. Si tienes problemas con el lanzamiento actual, por favor reporta el error para que podamos arreglarlo. Los lanzamientos previos también pueden ser contruidos desde el código fuente. Leé más acerca de los lanzamientos y su numeración. Para usar Modo Android , Processing 3 o posterior es necesario.", - "preReleases": "Pre-Lanzamientos", - "downloadOutro": "El documento de cambios cubre las actualizaciones incrementales entre los lanzamientos 4.x y su lectura es especialmente importante para los pre-lanzamientos.", + "downloadTitle": "Crea con código, en cualquier lugar", + "downloadTitleMeta": "Descarga Processing", + "downloadIntro": "Processing es código abierto y está disponible para macOS, Windows, y Linux. Proyectos creados con Processing también multiplataforma, y pueden ser ejecutados en macOS, Windows, Android, Raspberry Pi, y muchas plataformas Linux.", + "windowsIntelAssetTooltip": "Compatible con Windows 10 y 11. Para mejor compatibilidad, recomendamos Windows 10.", + "macOsIntelAssetTooltip": "Compatible desde macOS 10.15.7 (Catalina) hasta macOS 13 (Ventura). Recomendamos macOS 12 (Monterey).", + "macOsSiliconAssetTooltip": "Compatible con M1 y procesadores siguientes. Cuando sea posible, recomendamos macOS 12 (Monterey).", + "linuxIntelAssetTooltip": "Testeado y con soporte en Ubuntu 22.04, pero funcionará con la mayoría de distribuciones.", + "raspberryPi32AssetTooltip": "Se recomienda la últimva versión de Raspberry Pi OS.", + "raspberryPi64AssetTooltip": "Se recomienda la últimva versión de Raspberry Pi OS. El lanzamiento Raspberry Pi OS 64-bit es más reciente, así que de tener problemas, intenta con la versión 32-bit.", + "publishedOn": "Publicado en", + "macOsIntelWarning": "¿Usas macOS con CPU M1 o M2? Descarga entonces la versión Apple Silicon.", + "otherVersions": "¿Necesitas otra versión?", + "olderVersions": "¿Buscas versiones anteriores?", + "githubEarlierReleases": "En GitHub encontrarás versiones anteriores de Processing 4.", + "downloadChanges": "La lista de revisiones cubre las diferencias entre versiones a detalle.", + "earlierReleases": "Para versiones anteriores (3.5.4 o menor) revisa nuestra lista de lanzamientos estables.", + "getStartedTitle": "Comienza", + "getStartedDescription": "Comienza ya aprendiendo Processing y crea tu primer programa hoy!", + "tutorialsTitle": "Tutoriales", + "tutorialsDescription": "Aprende las bases de Processing en nuestros integrales tutoriales en una amplia gama de temas!", + "communityTitle": "Únete a la comunidad", + "communityDescription": "Únete a nuestra amistosa comunidad de estudiantes y programadores creativos en el foro de Processing", + "contributeTitle": "Contribuye", + "contributeDescription": "Ayuda a mejorar Processing aún más. Propón código, ejemplos, librerías, o ayuda a arreglar errores.", + "releasesTitle": "Lanzamientos", "stable": "Lanzamiento Estable", + "preReleases": "Pre-Lanzamientos", + "releasesIntro": "Revisa los cambios entre Processing 3.0 y Processing 4.0.
La lista de revisiones cubre las diferencias entre lanzamientos en detalle.", + "releasesOutro": "Nota que estos lanzamientos anteriores se proveen por efectos de archivo. No proveemos soporte para ellos. Si necesitas actualizar tu código a la última versión, revisa la página de cambios. Si encuentras algún problema con la versión más reciente, por favor reporta el error. También puedes construir lanzamientos anteriores desde el código fuente. Nota: Modo Android requiere Processing 3 o mayor.", "examplesIntro": " Programas cortos y típicos que exploran los fundamentos de la programación con Processing.", "examplesFilter": "Filtrar por palabras clave...", "librariesIntro": "Aumenta Processing más alla de los gráficos e imágenes con audio, video y comunicación con otros dispositivos.", @@ -116,6 +140,7 @@ "notFound": "NOT FOUND", "notFoundText": " Intentaste una ruta que no existe... que tristeza.", "and": "y", + "para": "para", "video": "Video", "serial": "Serial", "io": "Hardware I/O", @@ -128,7 +153,7 @@ "closeEditor": "Cerrar Editor", "donateIntro": " Necesitamos tu ayuda! Por favor apoya a Processing al hacer una donación a la Processing Foundation. Tu donación contribuye al desarrollo de software, recursos educativos como ejemplos de código, Fellowships, y eventos para la comunidad.", "donateOutro": "La Fundación Processing fue establecida en 2012 tras más de una década de trabajo para el software Processing. La misión de la Fundación es promover el conocimiento práctico de software dentro de las artes visuales, y el conocimiento de las artes visuales dentro de campos relacionados con la tecnología, y hacer estos campos accesibles a diversas comunidades. Nuestra meta es empoderar a personas con orígenes y antecedentes diversos para que aprendan a programar y hacer trabajos creativos a través del código, especialmente aquellas personas que no tienen acceso de otra forma a estas herramientas y recursos. Puedes leer más acerca de la historia de Processing en el ensayo corto 'A Modern Prometheus'.", - "donatePaymentTitle":" Donar a Processing", + "donatePaymentTitle": " Donar a Processing", "donateButton": "Donar", "donateHelp": " Con tu generosidad nos ayudas a continuar!", "moreExamples": "Más Ejemplos", @@ -224,8 +249,8 @@ "Sound": "Sonido", "Video & Vision": "Video y Visión", "Video&Vision": "Video y Visión", - "Hardware" : "Hardware", - "GPIO":"GPIO", + "Hardware": "Hardware", + "GPIO": "GPIO", "Drawing": "Dibujo", "ARIASortByLevel": "Ordenar por Nivel", "PressedSortByLevel": "Ordenar por Nivel", @@ -234,7 +259,7 @@ "CCLicense": "Licencia Internacional Creative Commons Attribution-NonCommercial-ShareAlike 4.0", "Cellular Automata": "Automatas Celulares", "Objects": "Objetos", - "Bouncing Ball":"Pelota Rebotando", + "Bouncing Ball": "Pelota Rebotando", "Array": "Arreglos", "Array 2D": "Arreglos 2D", "Array Objects": "Arreglos de Objetos", @@ -245,27 +270,27 @@ "Radial Gradient": "Gradiente Radial", "Linear Gradient": "Gradiente Lineal", "Color Variables": "Variables de Color", - "Hue":"Matiz", + "Hue": "Matiz", "Relativity": "Relatividad", "Saturation": "Saturación", "Conditionals1": "Condicionales 1", - "Conditionals2": "Condicionales 2", - "Embedded Iteration": "Iteración Embebida", - "Characters Strings": "Caracteres y Cadenas", - "Integers Floats":"Enteros y Decimales (Floats)", + "Conditionals2": "Condicionales 2", + "Embedded Iteration": "Iteración Embebida", + "Characters Strings": "Caracteres y Cadenas", + "Integers Floats": "Enteros y Decimales (Floats)", "True False": "Verdadero (True) y Falso (False)", "Variable Scope": "Alcance de las Variables", "Variables": "Variables", - "Bezier": "Bezier", + "Bezier": "Bezier", "Pie Chart": "Gráficas de Pastel", "Points Lines": "Puntos y Líneas", - "Primitives 3D": "Primitivas 3D", + "Primitives 3D": "Primitivas 3D", "Regular Polygon": "Polígonos Regulares", "Shape Primitives": "Formas Primitivas", - "Star": "Estrella", + "Star": "Estrella", "Triangle Strip": "Triangulación", "Alpha Mask": "Máscara Alfa", - "Create Image": "Crear Imagen", + "Create Image": "Crear Imagen", "Load and Display Image": "Cargar y Desplegar Imagen", "Pointillism": "Puntillismo", "Vector Math": "Matemáticas de Vectores", @@ -275,12 +300,12 @@ "Simulate": "Simular", "Reflection2": "Reflexión 2", "Reflection1": "Reflexión 1", - "Morph":"Cambio de Forma", + "Morph": "Cambio de Forma", "Moving On Curves": "Moverse sobre Curvas", "Acceleration With Vectors": "Aceleración con Vectores", "Vectors": "Vectores", "Smoke Particle System": "Sistema de Partículas de Humo", - "Linear": "Lineal", + "Linear": "Lineal", "Circle Collision": "Colisión en Círculos", "Brownian": "Browniano", "Bouncy Bubbles": "Burbujas Rebotadoras", @@ -302,30 +327,30 @@ "Words": "Palabras", "Text Rotation": "Rotación de Texto", "Letters": "Letras", - "Advanced Data": "Datos Avanzados", + "Advanced Data": "Datos Avanzados", "File IO": "Entrada/Salida (IO) de Archivos", - "Image Processing": "Procesamiento de Imágenes", + "Image Processing": "Procesamiento de Imágenes", "Interaction": "Interacción", "Bitwise Operators": "Operadores Bit a Bit", "String Functions": "Funciones para Cadenas", - "Relational Operators":"Operadores Relacionales" , + "Relational Operators": "Operadores Relacionales", "Logical Operators": "Operadores Lógicos", "2D Primitives": "Primitivas 2D", "3D Primitives": "Primitivas 3D", "3d Primitives": "Primitivas 3D", - "Time & Date":"Fecha & Hora" , - "Text Area":"Área de Texto", - "Documentation":"Documentación", + "Time & Date": "Fecha & Hora", + "Text Area": "Área de Texto", + "Documentation": "Documentación", "math": "Matemáticas", "calculation": "Cálculos", - "Time Date":"Fecha & Hora", + "Time Date": "Fecha & Hora", "ExamplesIn": "en Ejemplos: {subcat}", "Penrose Snowflake": "Copo de Nieve Penrose", - "Spot":"Spot", - "Loading Images":"Cargando Imágenes", - "Rotate Push Pop":"Rotar Push Pop", + "Spot": "Spot", + "Loading Images": "Cargando Imágenes", + "Rotate Push Pop": "Rotar Push Pop", "Keyboard Functions": "Funciones de Teclado", - "Histogram": "Histograma", + "Histogram": "Histograma", "Bounce": "Rebotar", "Forces With Vectors": "Fuerzas con Vectores", "Pixel Array": "Arreglo de Pixeles", @@ -340,34 +365,34 @@ "Button": "Botón", "Pentigree": "Pentigree", "Penrose Tile": "Mosaico Penrose", - "Koch": "Koch", - "Save One Image": "Guardar una Imagen", + "Koch": "Koch", + "Save One Image": "Guardar una Imagen", "Load File2": "Cargar Archivo 2", "Load File1": "Cargar Archivo 1", "Pulses": "Pulsos", "Continuous Lines": "Líneas Continuas", "Pattern": "Patrón", - "Mandelbrot": "Mandelbrot", + "Mandelbrot": "Mandelbrot", "Wolfram": "Wolfram", "Translate": "Trasladar", "Rotate X Y": "Rotar X Y", "Rotate": "Rotar", "Scale": "Escalar", - "ArrayList Class": "Clase ArrayList", - "Arm": "Brazo", - "Load Save JSON": "Cargar y Guardar JSON", - "Shape Vertices":"Vertices de Figuras", + "ArrayList Class": "Clase ArrayList", + "Arm": "Brazo", + "Load Save JSON": "Cargar y Guardar JSON", + "Shape Vertices": "Vertices de Figuras", "Scale Shape": "Escalar Figura", - "Load Display OBJ":"Cargar y Desplegar OBJ", + "Load Display OBJ": "Cargar y Desplegar OBJ", "Width Height": "Ancho y Alto", - "Setup Draw":"Configurar Dibujo", + "Setup Draw": "Configurar Dibujo", "Redraw": "Redibujar", "Recursion": "Recursión", "No Loop": "Sin Ciclo", "Loop": "Ciclo", "Functions": "Funciones", "Get Child": "Obtener Hijo", - "Disable Style":"Deshabilitar Estilo", + "Disable Style": "Deshabilitar Estilo", "Inheritance": "Herencia", "Sine Wave": "Onda Seno", "Sine Cosine": "Seno Coseno", @@ -375,24 +400,24 @@ "Random Gaussian": "Gaussiana Aleatoria", "Polar To Cartesian": "Polares a Cartesianas", "Operator Precedence": "Precedencia de Operadores", - "Noise Wave": "Onda de Ruido", + "Noise Wave": "Onda de Ruido", "Noise 3D": "Ruido 3D", "Noise 2D": "Ruido 2D", "Noise 1D": "Ruido 1D", "Statements Comments": "Declaraciones Comentarios", - "Create Graphics": "Crear Gráficos", + "Create Graphics": "Crear Gráficos", "Load Display SVG": "Cargar Desplegar SVG", "Multiple Constructors": "Multiples Constructores", "Composite Objects": "Objetos Compuestos", - "Map":"Mapear", + "Map": "Mapear", "Interpolate": "Interpolar", - "Increment Decrement": "Incrementar Decrementar", + "Increment Decrement": "Incrementar Decrementar", "Graphing 2D Equation": "Graficando Ecuaciones 2D", - "Double Random": "Doble Aleatorio", + "Double Random": "Doble Aleatorio", "Distance 2D": "Distancia 2D", "Distance 1D": "Distancia 1D", "Arctangent": "Arcotangente", - "Additive Wave":"Onda Aditiva", + "Additive Wave": "Onda Aditiva", "Reflection": "Reflexión", "On Off": "Prendido Apagado", "Mixture Grid": "Rejilla de Mezcla", @@ -413,4 +438,4 @@ "Background Image": "Imagen de Fondo", "Datatype Conversion": "Conversión de Tipos de Datos", " ": "" -} +} \ No newline at end of file diff --git a/netlify.toml b/netlify.toml new file mode 100644 index 000000000..89a544a45 --- /dev/null +++ b/netlify.toml @@ -0,0 +1,18 @@ +# Netlify redirects +# 1. To add a subdomain, add a redirect in this file first and merge the PR +# 2. Add the subdomain to the Processing website in netlify by going to Domain Management -> Production Domains -> Add domain alias + +[[redirects]] + from = "https://wiki.processing.org/*" + to = "https://github.com/processing/processing4/wiki" + status = 302 + +[[redirects]] + from = "https://vscode.processing.org/*" + to = "https://marketplace.visualstudio.com/items?itemName=processing-foundation.processing-vscode-extension" + status = 302 + +[[redirects]] + from = "https://discord.processing.org/*" + to = "https://discord.gg/h99u95nU7q" + status = 302 diff --git a/package-lock.json b/package-lock.json index 61b54ac49..f18eb51fd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,6 +17,7 @@ "classnames": "^2.3.1", "copy-to-clipboard": "^3.3.2", "gatsby": "^4.22.0", + "gatsby-plugin-fathom": "^2.1.1", "gatsby-plugin-image": "^2.22.0", "gatsby-plugin-manifest": "^4.22.0", "gatsby-plugin-mdx": "2.14.2", @@ -6162,9 +6163,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001387", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001387.tgz", - "integrity": "sha512-fKDH0F1KOJvR+mWSOvhj8lVRr/Q/mc5u5nabU2vi1/sgvlSqEsE8dOq0Hy/BqVbDkCYQPRRHB1WRjW6PGB/7PA==", + "version": "1.0.30001600", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001600.tgz", + "integrity": "sha512-+2S9/2JFhYmYaDpZvo0lKkfvuKIglrx68MwOBqMGHhQsNkLjB5xtc/TGoEPs+MxjSyN/72qer2g97nzR641mOQ==", "funding": [ { "type": "opencollective", @@ -6173,6 +6174,10 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ] }, @@ -10977,6 +10982,29 @@ "@parcel/core": "^2.0.0" } }, + "node_modules/gatsby-plugin-fathom": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/gatsby-plugin-fathom/-/gatsby-plugin-fathom-2.1.1.tgz", + "integrity": "sha512-t5xtF+Mo7x8GPhBO0gX3DF2slAfSXmut7u+IKkZ03sIvzlJ9VKaGMI1tetKxhe8/3Vylq7edn6lgZoiIjKDU3Q==", + "dependencies": { + "@babel/runtime": "7.14.5" + }, + "peerDependencies": { + "gatsby": ">=2.0.0", + "react": ">=16.0.0" + } + }, + "node_modules/gatsby-plugin-fathom/node_modules/@babel/runtime": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.5.tgz", + "integrity": "sha512-121rumjddw9c3NCQ55KGkyE1h/nzWhU/owjhw0l4mQrkzz4x9SGS1X8gFLraHwX7td3Yo4QTL+qj0NcIzN87BA==", + "dependencies": { + "regenerator-runtime": "^0.13.4" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/gatsby-plugin-image": { "version": "2.22.0", "resolved": "https://registry.npmjs.org/gatsby-plugin-image/-/gatsby-plugin-image-2.22.0.tgz", @@ -28185,9 +28213,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001387", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001387.tgz", - "integrity": "sha512-fKDH0F1KOJvR+mWSOvhj8lVRr/Q/mc5u5nabU2vi1/sgvlSqEsE8dOq0Hy/BqVbDkCYQPRRHB1WRjW6PGB/7PA==" + "version": "1.0.30001600", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001600.tgz", + "integrity": "sha512-+2S9/2JFhYmYaDpZvo0lKkfvuKIglrx68MwOBqMGHhQsNkLjB5xtc/TGoEPs+MxjSyN/72qer2g97nzR641mOQ==" }, "capital-case": { "version": "1.0.4", @@ -32004,6 +32032,24 @@ "@parcel/transformer-react-refresh-wrap": "2.6.2" } }, + "gatsby-plugin-fathom": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/gatsby-plugin-fathom/-/gatsby-plugin-fathom-2.1.1.tgz", + "integrity": "sha512-t5xtF+Mo7x8GPhBO0gX3DF2slAfSXmut7u+IKkZ03sIvzlJ9VKaGMI1tetKxhe8/3Vylq7edn6lgZoiIjKDU3Q==", + "requires": { + "@babel/runtime": "7.14.5" + }, + "dependencies": { + "@babel/runtime": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.14.5.tgz", + "integrity": "sha512-121rumjddw9c3NCQ55KGkyE1h/nzWhU/owjhw0l4mQrkzz4x9SGS1X8gFLraHwX7td3Yo4QTL+qj0NcIzN87BA==", + "requires": { + "regenerator-runtime": "^0.13.4" + } + } + } + }, "gatsby-plugin-image": { "version": "2.22.0", "resolved": "https://registry.npmjs.org/gatsby-plugin-image/-/gatsby-plugin-image-2.22.0.tgz", diff --git a/package.json b/package.json index bc359f353..42b73a9d7 100755 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "start": "gatsby serve", "clean": "gatsby clean", "format": "prettier --write \"src/**/*.{js,jsx,ts,tsx,json,md}\"", - "fetchReleases": "node scripts/fetchReleases.js", + "fetchReleases": "touch .env && node --env-file=.env scripts/fetchReleases.js", "updateContributions": "node scripts/updateContributions.js", "updateExamples": "node scripts/updateExamples.js", "updateKeywords": "node scripts/updateKeywords.js", @@ -41,6 +41,7 @@ "classnames": "^2.3.1", "copy-to-clipboard": "^3.3.2", "gatsby": "^4.22.0", + "gatsby-plugin-fathom": "^2.1.1", "gatsby-plugin-image": "^2.22.0", "gatsby-plugin-manifest": "^4.22.0", "gatsby-plugin-mdx": "2.14.2", @@ -113,4 +114,4 @@ } } } -} +} \ No newline at end of file diff --git a/scripts/fetchReleases.js b/scripts/fetchReleases.js index 177d004bd..645bf382a 100644 --- a/scripts/fetchReleases.js +++ b/scripts/fetchReleases.js @@ -3,22 +3,27 @@ const { graphql } = require('@octokit/graphql'); const fs = require('fs'); const path = require('path'); +const owner = process.env.GITHUB_OWNER || 'processing'; +const repo = process.env.GITHUB_REPO || 'processing'; +const repo4 = process.env.GITHUB_REPO4 || 'processing4'; + const fetchReleases = async (githubToken) => { const { processing, processing4 } = await graphql( ` query { - processing: repository(name: "processing", owner: "processing") { + processing: repository(name: "${repo}", owner: "${owner}") { releases(first: 100, orderBy: { field: NAME, direction: DESC }) { edges { node { name tagName publishedAt - releaseAssets(first: 10) { + releaseAssets(first: 20) { edges { node { name downloadUrl + size } } } @@ -26,18 +31,20 @@ const fetchReleases = async (githubToken) => { } } } - processing4: repository(name: "processing4", owner: "processing") { + processing4: repository(name: "${repo4}", owner: "${owner}") { releases(first: 100, orderBy: { field: NAME, direction: DESC }) { edges { node { name tagName + isPrerelease publishedAt - releaseAssets(first: 10) { + releaseAssets(first: 20) { edges { node { name downloadUrl + size } } } @@ -70,16 +77,78 @@ const fetchReleases = async (githubToken) => { JSON.stringify(release.node, null, 2) ); }); + + // sort releases by major version eg : {"1": [], "2": [], "3": [], "4": []} + const sortedReleases = releases.reduce((acc, release) => { + const majorVersion = release.node.tagName.replace(/processing(-\d+)?-/, '').split('.')[0]; + if (!acc[majorVersion]) { + acc[majorVersion] = []; + } + acc[majorVersion].push(release.node); + return acc; + }, {}); + + // sort releases by date within each major version + Object.keys(sortedReleases).forEach((key) => { + sortedReleases[key].sort((a, b) => new Date(b.publishedAt) - new Date(a.publishedAt)); + }); + + // genereate the content/download/selected.json e.g. + // { + // "selectedReleases": [ + // "processing-1310-4.4.10", + // "processing-0270-3.5.4", + // "processing-0227-2.2.1" + // ], + // "selectedPreReleases": [ + // "" + // ] + // } + // select the latest release for each major version + const selectedReleases = Object.values(sortedReleases).map( + (releases) => releases[0].tagName + ); + const latestStableRelease = releases.toSorted((a, b) => new Date(b.node.publishedAt) - new Date(a.node.publishedAt))[0].node; + + // select the latest pre-release from processing4 if it is newer than the latest stable release + const preReleases = processing4.releases.edges.filter( + (release) => release.node.isPrerelease && new Date(release.node.publishedAt) > new Date(latestStableRelease.publishedAt) + ); + const selectedPreReleases = preReleases.length + ? [preReleases[0].node.tagName] + : [""]; + fs.writeFileSync( + path.join(__dirname, '..', 'content', 'download', 'selected.json'), + JSON.stringify( + { + selectedReleases, + selectedPreReleases + }, + null, + 2 + ) + ); + + }; +if (process.env.GITHUB_TOKEN) { + console.log('Fetching releases from github.com'); + fetchReleases(process.env.GITHUB_TOKEN); + return; +} + const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); -rl.question('Please enter your GitHub token: ', (token) => { - rl.close(); +rl.question( + 'Please enter your GitHub token (get it from https://github.com/settings/tokens): ', + (token) => { + rl.close(); - console.log('Fetching releases from github.com'); - fetchReleases(token); -}); + console.log('Fetching releases from github.com'); + fetchReleases(token); + } +); diff --git a/scripts/updateExamples.js b/scripts/updateExamples.js index 0899b5546..4fcab27c7 100644 --- a/scripts/updateExamples.js +++ b/scripts/updateExamples.js @@ -76,6 +76,7 @@ const updateExamples = async () => { cwd: path.join(from, example.dirname) }); + for (let i = 0; i < pdes.length; i++) { const pde = pdes[i]; fs.copySync( @@ -91,6 +92,10 @@ const updateExamples = async () => { for (let i = 0; i < dataFiles.length; i++) { const dataFile = dataFiles[i]; + fs.copySync( + path.join(from, example.dirname, dataFile), + path.join(to, example.dirname, dataFile) + ) fs.copySync( path.join(from, example.dirname, dataFile), path.join( diff --git a/src/components/Button.module.css b/src/components/Button.module.css index 7d92e4395..95c2e4717 100644 --- a/src/components/Button.module.css +++ b/src/components/Button.module.css @@ -5,6 +5,7 @@ padding: 5px 18px 6px 18px; font-size: var(--text-small); font-family: var(--font-mono); + font-feature-settings: var(--font-mono-settings); outline: none; border: none; cursor: pointer; diff --git a/src/components/CopyButton.module.css b/src/components/CopyButton.module.css index 2d404480e..55ebfa409 100644 --- a/src/components/CopyButton.module.css +++ b/src/components/CopyButton.module.css @@ -1,6 +1,4 @@ .root { - position: absolute; - right: var(--gutter); height: 32px; padding: 6px 12px; font-size: var(--text-small); diff --git a/src/components/Footer.js b/src/components/Footer.js index 19a068dd5..2defd88ac 100644 --- a/src/components/Footer.js +++ b/src/components/Footer.js @@ -15,21 +15,27 @@ const Footer = ({ withSidebar }) => {

{intl.formatMessage({ id: 'contactUs' })}

{intl.formatMessage({ id: 'contactUsDescription' })}

- foundation@processing.org + hello@processing.org

ul { + &>ul { display: flex; font-size: inherit; @@ -54,6 +55,10 @@ margin-top: var(--margin-quarter); font-size: var(--text-xsmall); white-space: pre-wrap; + + & a { + color: white; + } } @media (--small) { @@ -84,4 +89,4 @@ text-align: center; } } -} +} \ No newline at end of file diff --git a/src/components/HeadMatter.js b/src/components/HeadMatter.js index e9b715396..6bd17094f 100644 --- a/src/components/HeadMatter.js +++ b/src/components/HeadMatter.js @@ -22,6 +22,8 @@ export const HeadMatter = ({ imgUrl = /^http/.test(imgSrc) ? imgSrc : 'https://processing.org/' + imgSrc; } + imgUrl = imgUrl || '/img/banner.png'; + const pageUrl = 'https://processing.org/' + location.pathname; return ( @@ -43,7 +45,7 @@ export const HeadMatter = ({ - {img && } + {imgUrl && } ); }; diff --git a/src/components/Header.module.css b/src/components/Header.module.css index 0ea550e74..e3aac7c58 100644 --- a/src/components/Header.module.css +++ b/src/components/Header.module.css @@ -1,6 +1,6 @@ .root { width: 100%; - position: fixed; + position: sticky; top: 0; z-index: 800; background-color: white; @@ -17,4 +17,4 @@ &:focus { color: var(--processing-blue-dark); } -} +} \ No newline at end of file diff --git a/src/components/Layout.js b/src/components/Layout.js index 69c3729f2..5d0cf851f 100755 --- a/src/components/Layout.js +++ b/src/components/Layout.js @@ -69,6 +69,9 @@ const Layout = ({ children, withSidebar, withBreadcrumbs, mainClassName }) => { return (

+
+ +
diff --git a/src/components/Layout.module.css b/src/components/Layout.module.css index e95c449b5..7aad15c6a 100755 --- a/src/components/Layout.module.css +++ b/src/components/Layout.module.css @@ -2,7 +2,7 @@ display: flex; flex-direction: column; height: 100%; - min-height: 100%; + min-height: 100vh; & h2 { scroll-margin-top: 150px; @@ -14,7 +14,6 @@ } .main { - top: 145px; position: relative; flex: 1; padding-top: var(--vertical-margin-large); @@ -25,8 +24,8 @@ padding-top: var(--vertical-margin-xsmall); } -@media (--reduced) { - .main { - top: 95px; - } -} +/* Foundation donate banner custom properties */ +body{ + --donate-banner-dark: #182998; + --donate-banner-background: var(--donate-processing-background) +} \ No newline at end of file diff --git a/src/components/Navbar.js b/src/components/Navbar.js index e875632af..a1db20320 100644 --- a/src/components/Navbar.js +++ b/src/components/Navbar.js @@ -30,7 +30,8 @@ export const items = [ { name: 'reference', href: '/reference' }, { name: 'environment', href: '/environment' }, { name: 'libraries', href: '/reference/libraries' }, - { name: 'tools', href: '/reference/tools' } + { name: 'tools', href: '/reference/tools' }, + { name: 'wiki', href: 'https://wiki.processing.org' } ] }, { @@ -42,14 +43,15 @@ export const items = [ ] }, { - name: 'teach', - href: 'https://processingfoundation.org/education' + name: 'forum', + href: 'https://discourse.processing.org' }, { name: 'about', children: [ { name: 'overview', href: '/overview' }, - { name: 'people', href: '/people' } + { name: 'people', href: '/people' }, + { name: 'privacy', href: '/privacy' } ] }, { diff --git a/src/components/Navbar.module.css b/src/components/Navbar.module.css index 1c4ab1aa4..0e5518648 100644 --- a/src/components/Navbar.module.css +++ b/src/components/Navbar.module.css @@ -141,7 +141,9 @@ } } -.item:hover .submenu { +.item:hover .submenu, +.item:focus-visible .submenu, +.submenu:focus-within { opacity: 1; max-height: 400px; } diff --git a/src/components/OpenWithButton.js b/src/components/OpenWithButton.js new file mode 100644 index 000000000..5e25d53e1 --- /dev/null +++ b/src/components/OpenWithButton.js @@ -0,0 +1,63 @@ +import React, { useState, useEffect } from 'react'; +import classnames from 'classnames'; + +import ProcessingIcon from '../images/logo-processing.svg'; + +import * as css from './OpenWithButton.module.css'; + +const OpenWithButton = ({ pdes, dataFiles }) => { + const main = pdes[0] + const [sketchURL, setSketchURL] = useState(`processing://open?sketch=${stringToBase64(main.code)}`) + + useEffect(() => { + let sketchURL = `pde://sketch/base64/${stringToBase64(main.code)}?pde=` + for (let pde of pdes) { + if (pde === main) continue + sketchURL += `${pde.name}:${stringToBase64(pde.code)},` + } + if (dataFiles.length > 0) { + let data = '&data=' + dataFiles.map(file => file.relativePath.split('/').pop() + ":" + window.location.protocol + "//" + window.location.host + file.publicURL).join(',') + sketchURL += data + } + setSketchURL(sketchURL) + }, []) + const [showInstructions, setShowInstructions] = useState(false) + + useEffect(() => { + const handleClickOutside = (event) => { + if (showInstructions && !event.target.closest(`.${css.root}`)) { + setShowInstructions(false); + } + }; + + document.addEventListener('click', handleClickOutside); + return () => document.removeEventListener('click', handleClickOutside); + }, [showInstructions]); + + return ( + setShowInstructions(true)} + > + {'Open In Processing'} + {showInstructions && ( +
+

Opening Processing

+

If nothing happens, Download Processing version 4.4.1 or later and try again.

+

Make sure Processing is installed and was opened at least once.

+
+ )} + + ) +} + +export default OpenWithButton; + +function stringToBase64(str) { + if (typeof Buffer !== 'undefined') { + return Buffer.from(str).toString('base64'); + } + return btoa(str) +} \ No newline at end of file diff --git a/src/components/OpenWithButton.module.css b/src/components/OpenWithButton.module.css new file mode 100644 index 000000000..b507d5213 --- /dev/null +++ b/src/components/OpenWithButton.module.css @@ -0,0 +1,94 @@ +.root { + height: 32px; + padding: 6px 12px; + font-size: var(--text-small); + font-weight: bold; + color: var(--darkgray); + cursor: pointer; + fill: var(--darkgray); + position: relative; + + & svg { + height: 12px; + width: auto; + } +} + +.root:hover { + color: var(--darkergray); + fill: var(--darkergray); +} + +.root:active { + color: var(--processing-blue-mid); + fill: var(--processing-blue-mid); +} + +.instructions { + bottom: 100%; + margin-bottom: 16px; + left: auto; + right: 0; + position: absolute; + transform: none; + min-width: 24em; + max-width: 24em; + width: fit-content; + background-color: #555; + color: #fff; + text-align: left; + border-radius: 6px; + padding: 16px 10px 10px 25px; + transition: opacity 0.3s; + pointer-events: auto; + a { + color: var(--processing-blue-light); + text-decoration: underline; + &:hover { + color: white; + } + } + h1 { + color: #fff; + font-size: 2em; + margin: 0 0 0.3em 0; + font-weight: 500; + } + &::before { + content: ""; + position: absolute; + top: 100%; + left: auto; + right: 20px; + margin-left: -10px; + border-width: 10px; + border-style: solid; + border-color: #555 transparent transparent transparent; + } +} + +.tooltipFootnote { + color: var(--gray); + font-size: 0.9em; +} + +@keyframes ellipsis { + 10% { + content: " "; + } + 25% { + content: " . "; + } + 50% { + content: " .. "; + } + 75% { + content: " ..."; + } +} + +.ellipsis::after { + display: inline-block; + animation: ellipsis 1.5s infinite; + content: " ..."; +} diff --git a/src/components/SearchBar.js b/src/components/SearchBar.js index 2e3154121..6e202c168 100644 --- a/src/components/SearchBar.js +++ b/src/components/SearchBar.js @@ -43,7 +43,10 @@ const SearchBar = ({ className }) => { id: focused ? 'searchWithGoogle' : 'search' })} /> -
diff --git a/src/components/SearchBar.module.css b/src/components/SearchBar.module.css index 908f61069..956c84ab1 100644 --- a/src/components/SearchBar.module.css +++ b/src/components/SearchBar.module.css @@ -23,6 +23,7 @@ .input::placeholder { color: var(--darkgray); opacity: 1; + padding-top: 7px; } .searchBar { diff --git a/src/components/Sidebar.module.css b/src/components/Sidebar.module.css index 674a5dc8e..83fb00c5b 100644 --- a/src/components/Sidebar.module.css +++ b/src/components/Sidebar.module.css @@ -30,6 +30,7 @@ .title { font-size: var(--text-reduced); padding-top: 20px; + overflow-wrap: break-word; } .toggleButton { @@ -49,6 +50,10 @@ flex-grow: 1; position: relative; overflow-y: auto; + padding-top: 1rem; + & ul li h4 { + text-wrap: pretty; + } } .active a h4 { @@ -106,20 +111,28 @@ } .tocItem { + margin-bottom: 1rem; + & a { font-family: var(--font); text-overflow: ellipsis; color: var(--processing-blue-dark); + border-left: 4px solid transparent; + display: flex; + align-items: center; + padding: 3px 0.75rem; + transition: color 0.3s, border-left-color 0.3s; + &:hover { color: var(--processing-blue-mid); + border-left-color: var(--processing-blue-mid); } + } & h4 { font-size: var(--text-regular); color: inherit; - &:hover { - color: inherit; - } + margin: 0; } } diff --git a/src/components/SidebarGroup.module.css b/src/components/SidebarGroup.module.css index aa5ec9bbc..debce4a75 100644 --- a/src/components/SidebarGroup.module.css +++ b/src/components/SidebarGroup.module.css @@ -73,6 +73,7 @@ display: flex; flex-direction: row; align-items: baseline; + cursor: pointer; & .button { color: var(--processing-blue-dark); diff --git a/src/components/SidebarTreeList.module.css b/src/components/SidebarTreeList.module.css index 84ff3f202..8ada54f7e 100644 --- a/src/components/SidebarTreeList.module.css +++ b/src/components/SidebarTreeList.module.css @@ -7,6 +7,7 @@ font-size: var(--text-small); line-height: 1.6rem; font-family: var(--font-mono); + font-feature-settings: var(--font-mono-settings); font-variant-ligatures: none; text-decoration: none; color: var(--black); diff --git a/src/components/Tabs.js b/src/components/Tabs.js index 7d3fce18a..16a748466 100644 --- a/src/components/Tabs.js +++ b/src/components/Tabs.js @@ -3,13 +3,14 @@ import classnames from 'classnames'; import Button from './Button'; import CopyButton from './CopyButton'; +import OpenWithButton from './OpenWithButton'; import { useHighlight } from '../hooks'; import { escapeHtml } from '../utils'; import * as css from './Tabs.module.css'; -const Tabs = ({ pdes, className }) => { +const Tabs = ({ pdes, className, dataFiles }) => { const [active, setActive] = useState(pdes[0].name); useHighlight(); @@ -40,7 +41,10 @@ const Tabs = ({ pdes, className }) => { [css.activeCode]: pde.name === active })} key={key}> - +
+ + +
              {
   if (name.includes('windows') || name.includes('.exe')) return 'Windows';
+  else if (name.includes('linux-arm')) return 'Raspberry Pi';
+  else if (name.includes('linux-aarch64')) return 'Raspberry Pi';
   else if (name.includes('linux')) return 'Linux';
-  else if (name.includes('macos')) return 'MacOS';
+  else if (name.includes('macos')) return 'macOS';
   else return 'Unknown';
 };
 
 const getBit = (name) => {
-  if (name.includes('x64')) return '(Intel 64-bit)';
-  else if (name.includes('windows64')) return '(64-bit)';
-  else if (name.includes('windows32')) return '(32-bit)';
-  else if (name.includes('macos-aarch64')) return '(Apple Silicon)';
-  else if (name.includes('linux-arm32')) return '(Raspberry Pi 32-bit)';
-  else if (name.includes('linux-arm64')) return '(Raspberry Pi 64-bit)';
+  if (name.includes('x64')) return 'Intel';
+  else if (name.includes('windows64')) return '64-bit';
+  else if (name.includes('windows32')) return '32-bit';
+  else if (name.includes('macos-aarch64')) return 'Apple Silicon';
+  else if (name.includes('linux-arm32')) return '32-bit';
+  else if (name.includes('linux-arm64')) return '64-bit';
+  else if (name.includes('linux-aarch64')) return 'Arm';
   else return null;
 };
 
+const getTooltip = (name, intProvider) => {
+  if (name.includes('windows')) return intProvider('windowsIntelAssetTooltip');
+  else if (name.includes('macos-aarch64'))
+    return intProvider('macOsSiliconAssetTooltip');
+  else if (name.includes('macos')) return intProvider('macOsIntelAssetTooltip');
+  else if (name.includes('linux-arm32'))
+    return intProvider('raspberryPi32AssetTooltip');
+  else if (name.includes('linux-arm64'))
+    return intProvider('raspberryPi64AssetTooltip');
+  else if (name.includes('linux')) return intProvider('linuxIntelAssetTooltip');
+  else return null;
+};
+
+// Adapted from https://stackoverflow.com/q/15900485
+function formatBytes(bytes, decimals = 0) {
+  if (!+bytes) return '0 Bytes';
+
+  const k = 1024;
+  const dm = decimals < 0 ? 0 : decimals;
+  const sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
+
+  const i = Math.floor(Math.log(bytes) / Math.log(k));
+
+  return `${parseFloat((bytes / Math.pow(k, i)).toFixed(dm))} ${sizes[i]}`;
+}
+
 /**
   Hook to find turn a releases GraphQL array into an array of objects
   to use on the download page
   @param {Array} releases Array of releases JSON files
 **/
 export const usePreparedReleases = (releases) => {
+  const intl = useIntl();
+
   return useMemo(() => {
     const prepared = [];
 
@@ -38,17 +70,43 @@ export const usePreparedReleases = (releases) => {
           month: 'long',
           day: 'numeric'
         }),
-        assets: []
+        assets: [],
+        assetsByOs: { Windows: [], macOS: [], Linux: [], 'Raspberry Pi': [], "Linux & Raspbery Pi": [] }
       };
 
       // Prepare release assets
       for (let j = 0; j < release.releaseAssets.edges.length; j++) {
         const asset = release.releaseAssets.edges[j].node;
+        if (asset.name.includes('portable')) continue;
+        if (asset.name.includes(".snap")) {
+          asset.downloadUrl = process.env.SNAPSTORE_URL ?? "https://snapcraft.io/processing";
+          if (asset.name.includes("aarch64")) {
+            asset.downloadUrl = "https://snapcraft.io/install/processing/raspbian"
+          }
+        }
         item.assets.push({
           name: asset.name,
           os: getOS(asset.name),
           bit: getBit(asset.name),
-          url: asset.downloadUrl
+          url: asset.downloadUrl,
+          size: formatBytes(asset.size),
+          tooltipMessage: getTooltip(asset.name, (id) =>
+            intl.formatMessage({ id })
+          )
+        });
+      }
+
+      for (let asset of item.assets) {
+        if (asset.os in item.assetsByOs) {
+          item.assetsByOs[asset.os].push(asset);
+        }
+      }
+      for (let os in item.assetsByOs) {
+        item.assetsByOs[os].sort((a, b) => {
+          if (a.bit === b.bit) return 0;
+          if (a.bit != null && a.bit.includes('Intel')) return 1;
+          if (b.bit != null && b.bit.includes('Intel')) return -1;
+          return 0;
         });
       }
 
@@ -56,5 +114,44 @@ export const usePreparedReleases = (releases) => {
     }
 
     return prepared;
-  }, [releases]);
+  }, [intl, releases]);
+};
+
+/**
+  Hook to detect the OS where the site is mounted. 
+  Will default to Windows if fails to detect other.
+**/
+export const useMachineOS = (releases) => {
+  const [detected, setDetected] = useState({
+    os: '',
+    asset: null
+  });
+
+  const selectAsset = useCallback(
+    (asset) => {
+      setDetected({ os: asset.os, asset });
+    },
+    [setDetected]
+  );
+
+  useEffect(() => {
+    const selectOS = (os) => {
+      const osReleases = releases[os];
+      const firstAsset = osReleases[0];
+      selectAsset(firstAsset);
+    };
+
+    const { userAgent } = navigator;
+    if (userAgent.search('Windows') !== -1) {
+      selectOS('Windows');
+    } else if (userAgent.search('Mac') !== -1) {
+      selectOS('macOS');
+    } else if (userAgent.search('X11') !== -1) {
+      selectOS('Linux');
+    } else {
+      selectOS('Windows');
+    }
+  }, [releases, selectAsset]);
+
+  return detected;
 };
diff --git a/src/hooks/examples/data.js b/src/hooks/examples/data.js
new file mode 100644
index 000000000..86b35c853
--- /dev/null
+++ b/src/hooks/examples/data.js
@@ -0,0 +1,23 @@
+import { useStaticQuery, graphql } from "gatsby"
+
+export const useExampleDataFiles = (sketchName) => {
+  const data = useStaticQuery(
+    graphql`
+query GetExampleDataFiles {
+  allFile(
+    filter: {sourceInstanceName: {eq: "examples"}, name: {}, relativePath: {regex: "/data/"}}
+  ) {
+    edges {
+      node {
+        relativePath
+        publicURL
+      }
+    }
+  }
+}`
+  )
+  return data.allFile.edges
+    .map((edge) => edge.node)
+    .filter(node => node.relativePath.includes(sketchName))
+    ;
+}
\ No newline at end of file
diff --git a/src/images/community-icon.svg b/src/images/community-icon.svg
new file mode 100644
index 000000000..4190b0a8f
--- /dev/null
+++ b/src/images/community-icon.svg
@@ -0,0 +1,4 @@
+
+
+  
+
\ No newline at end of file
diff --git a/src/images/create-icon.svg b/src/images/create-icon.svg
new file mode 100644
index 000000000..6c2c53607
--- /dev/null
+++ b/src/images/create-icon.svg
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/src/images/github-icon.svg b/src/images/github-icon.svg
new file mode 100644
index 000000000..ffce322a0
--- /dev/null
+++ b/src/images/github-icon.svg
@@ -0,0 +1,3 @@
+
+
+
diff --git a/src/images/info-icon.svg b/src/images/info-icon.svg
new file mode 100644
index 000000000..6a71162e7
--- /dev/null
+++ b/src/images/info-icon.svg
@@ -0,0 +1,3 @@
+
+
+
diff --git a/src/images/learn-icon.svg b/src/images/learn-icon.svg
new file mode 100644
index 000000000..d2ff25787
--- /dev/null
+++ b/src/images/learn-icon.svg
@@ -0,0 +1,11 @@
+
+
+
+
+
+	
+
+
+
\ No newline at end of file
diff --git a/src/images/logo-linux.svg b/src/images/logo-linux.svg
new file mode 100644
index 000000000..871f19aac
--- /dev/null
+++ b/src/images/logo-linux.svg
@@ -0,0 +1,25 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/images/logo-macos.svg b/src/images/logo-macos.svg
new file mode 100644
index 000000000..20e2daec3
--- /dev/null
+++ b/src/images/logo-macos.svg
@@ -0,0 +1,3 @@
+
+
+
diff --git a/src/images/logo-raspberry.svg b/src/images/logo-raspberry.svg
new file mode 100644
index 000000000..2b49b6fbd
--- /dev/null
+++ b/src/images/logo-raspberry.svg
@@ -0,0 +1,3 @@
+
+
+
diff --git a/src/images/logo-windows.svg b/src/images/logo-windows.svg
new file mode 100644
index 000000000..e1752659c
--- /dev/null
+++ b/src/images/logo-windows.svg
@@ -0,0 +1,3 @@
+
+
+
diff --git a/src/images/partners/netlify.svg b/src/images/partners/netlify.svg
new file mode 100644
index 000000000..7e991d1b6
--- /dev/null
+++ b/src/images/partners/netlify.svg
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/images/partners/uptimerobot.svg b/src/images/partners/uptimerobot.svg
new file mode 100644
index 000000000..b336eca36
--- /dev/null
+++ b/src/images/partners/uptimerobot.svg
@@ -0,0 +1,5 @@
+
+
+   
+   
+
\ No newline at end of file
diff --git a/src/pages/404.js b/src/pages/404.js
index 05ac16b32..ae351b520 100755
--- a/src/pages/404.js
+++ b/src/pages/404.js
@@ -3,6 +3,7 @@ import { Helmet } from 'react-helmet';
 import { useIntl } from 'react-intl';
 
 import Layout from '../components/Layout';
+import * as css from '../styles/pages/404.module.css';
 
 const NotFoundPage = () => {
   const intl = useIntl();
@@ -12,8 +13,10 @@ const NotFoundPage = () => {
       
         Codestin Search App
       
-      

{intl.formatMessage({ id: 'notFound' })}

-

{intl.formatMessage({ id: 'notFoundText' })}

+
+

{intl.formatMessage({ id: 'notFound' })}

+

{intl.formatMessage({ id: 'notFoundText' })}

+
); }; diff --git a/src/pages/donate.js b/src/pages/donate.js index 9b66c9fdc..c8207debf 100644 --- a/src/pages/donate.js +++ b/src/pages/donate.js @@ -22,6 +22,10 @@ const Donate = () => {

{intl.formatMessage({ id: 'donate' })}

{intl.formatMessage({ id: 'donateIntro' })}

+