Deprecated: Required parameter $query follows optional parameter $post in /var/www/html/wp-content/plugins/elementor-extras/modules/breadcrumbs/widgets/breadcrumbs.php on line 1215
Physics Engine - Blocks, Python Functions, Projects | PictoBlox Extension
[PictoBloxExtension]

Physics Engine

physics
Extension Description
Add physics to simulate the real-life simulation.

Introduction

What is Physics Engine?

Physics Engine is a 2D rigid body simulation library for making games and animations. Programmers can use it in their games to make objects move in realistic ways and make the projects more interactive. From the game engine’s point of view, the physics engine is just a system for procedural animation.

Accessing Physics Engine in Block Coding

Following is the process to add Physics Engine capability to the PictoBlox Project.

  1. Open PictoBlox and create a new file.
  2. Select the coding environment as Block Coding.
  3. Next, click on the Add Extension button and add the Physics Engine extension.
  4. You can find the Physics Engine blocks available in the project.

Core Concepts

Physics Engine works with several fundamental concepts and objects. We briefly define these objects here and more details are given later in the block definitions and examples.

  1. Shape: A shape is a 2D geometrical sprite, such as a circle or polygon or the sprite shape.
  2. Rigid body: A chunk of matter that is so strong that the distance between any two bits of matter on the chunk is constant. They are hard like a diamond. In the following discussion, we use body interchangeably with rigid body.
  3. Fixture: A fixture binds a shape to a body and adds material properties such as density, friction, and restitution. A fixture puts a shape into the collision system (broad phase) so that it can collide with other shapes.
  4. Constraint: A constraint is a physical connection that removes degrees of freedom from bodies. A 2D body has 3 degrees of freedom (two translation coordinates and one rotation coordinate). If we take a body and pin it to the wall (like a pendulum) we have constrained the body to the wall. At this point the body can only rotate about the pin, so the constraint has removed 2 degrees of freedom.
  5. Contact constraint: A special constraint designed to prevent penetration of rigid bodies and to simulate friction and restitution. You do not create contact constraints; they are created automatically by Physics Engine.
  6. World: A physics world is a collection of bodies, fixtures, and constraints that interact together. Box2D supports the creation of multiple worlds, but this is usually not necessary or desirable.
  7. Solver: The physics world has a solver that is used to advance time and resolve contact and joint constraints. The Box2D solver is a high-performance iterative solver that operates in order N time, where N is the number of constraints.
  8. Continuous collision: The solver advances bodies in time using discrete time steps.
Read More

PictoBlox Blocks

It changes Sound Effects.
The block will check its Boolean condition: if the condition is true, the code held inside the first C (space) will activate, and then the script will continue; if the condition is false, the code inside the second C will activate (unlike the If () Then block).
Scripts that begin with this block will be invoked once the specified broadcast has been sent by a calling script. If a Forever block is sending the broadcast faster than the attached script can finish running, the script will restart without reaching the blocks at the end. This can be avoided by using Broadcast () and Wait.
The block holds the most recent text imputed with the Ask () and Wait block. When nothing has been inputted yet, the value will hold nothing.
Once you have analyzed the images, you can use the get # of objects block to get the number of objects recognized in the image.
The block joins two Boolean blocks so any one of them can be true to return true — if at least one of them is true, the block returns true; if neither of them are true, it returns false.
The block simply holds its variable value.
Once you have analyzed the images, you can use the get # of people block to get the number of people recognized in the image.
This block returns the x position of the pose landmark detected. The position is mapped with the stage coordinates.
The recognized () count block reports the number of selected things to count in the image. Multiple celebrities, brands, objects, and image tags in a single image can be seen.
Once you have analyzed the images, you can use the get # faces block to get the number of faces recognized in the image.
Once you have analyzed the image for printed text, you can use a printed text result block to get the recognized text from the image in a string format.
The block checks if the currently recognized class from the selected image feed (camera, stage, costume or backdrop) is the selected class or not.
The block analyses the specified text and provides the sentiment associated with the text – Positive, Negative or Neutral.
Once you have analyzed the images, you can use the get # of objects detected block to get the number of objects recognized in the image.
The block returns the QR Code data value detected.
The block changes the instrument that the Play Note () for () Beats block will play. A sprite can play only one instrument at a time. In order to play multiple instruments at once, it is necessary to have multiple sprites or clones of a single sprite
The block sets the pen’s color to the given color, which can be selected by clicking on the input.
This block sets the pen’s color, saturation, brightness (also known as shade), and transparency. The first value can be selected from “color” (default), “saturation”, “brightness”, and “transparency”.
The block sets the analog state of the specified pin to the specified value between 0 to 255.
The block displays the specified character on the Quarky RGB LED.
The block sets the threshold value of the specified IR sensor to the specified value. The value can be from 0 to 4095.
The block checks if the currently recognized class from the analyze image from () block is the selected class or not.
The block analyses the image and saves the face information locally, which can be accessed using other blocks.
The block checks if the currently recognized class from the analyze image from () block is the selected class or not.
The block sets the head servo motor angle to the specified angle.
The block checks if the currently recognized class from the analyze image from () block is the selected class or not.
The block reports the specified class confidence value of the selected class. 0 is low confidence and 1 is high confidence.
Scripts that wear this block will activate once the selected class is predicted either on the recognition window.
The block sets the selected property of the sprite (density, roughness, and bounce) to the specified value.
All articles loaded
No more articles to load

Block Coding Examples

All articles loaded
No more articles to load
Table of Contents