Please click the attachment to download a PDF containing an examples of QR codes to be tracked by Fologram. You can generate your own codes with online tools such as QR Code Generator.
The "content" output will provide the raw data output if the code was not JSON formatted with a "content" or "c" key.
If no size was specified within the code (see schema below), it will default to 100mm, or can be overridden by specifying the size in Grasshopper.
Multiple codes can be read at once.
The origin of the code is in the lower left corner.
This example tracks the 3D location of a QR code and draws a box on top and the labelling text.
Creating your own codes
Any QR code can be read by Fologram, and the results will be returned in Grasshopper.
To extract the 3D position of a code, the size needs to be specified in Grasshopper, or within the code itself. If the size is provided in the code, do not provide a size in the Grasshopper input.
If you'd like to use your own codes and specify the size of the code within the code itself, use the following schema:
This schema is used to insert additional information into a QR code such that we can locate it spatially without any further input. The schema follows JSON conventions for simple parsing and should be encoded in an alphanumeric QR code.
Name: "size" or "s"
Expected value: The size of the code in millimeters, including quotation marks.
Name: "content" or "c"
Expected value: The content or value of the QR code, including quotation marks.
"content":"My test content"
Produces this code:
Which can be both have it's contents read and be spatially tracked.
The amount of information present in the QR code determines how easily it can be detected, and subsequently what size is appropriate for it to be printed. In general, the larger the code, the more reliable the detection will be. For small markers and real-time tracking where only numerical information is required, Aruco markers may be preferable.
Micro-QR, or Version 1 codes will be read, but will not report any positional data as an alignment pattern is required for establishing 3D positioning data. The blue square below denotes the alignment pattern that appears on QR codes of version 2 and above.