Documentation update
@@ -1,6 +1,6 @@
|
||||
Package: brickr
|
||||
Title: Tools to emulate the LEGO® System in R
|
||||
Version: 0.2.9.9215
|
||||
Version: 0.2.9.9300
|
||||
Authors@R:
|
||||
person(given = "Ryan",
|
||||
family = "Timpe",
|
||||
|
||||
4
NEWS.md
@@ -2,7 +2,7 @@
|
||||
|
||||
##brickr 0.3.0 - a.k.a. [Pirate ship]()
|
||||
|
||||
* An overall leaner package to ensure optimal performance.
|
||||
* An overall leaner package to ensure optimal performance and remove experimental features.
|
||||
|
||||
* Updated documentation to increase accessibility and usability.
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
|
||||
----
|
||||
|
||||
# brickr 0.2.0 - a.k.a. [Castle]()
|
||||
# brickr 0.2.0 - a.k.a. [Castle](https://twitter.com/ryantimpe/status/1191354410124709892)
|
||||
|
||||
* Lots of bug fixes. More to come.
|
||||
|
||||
|
||||
28
README.Rmd
@@ -26,11 +26,10 @@ library(tidyverse)
|
||||
## Overview
|
||||
**brickr** is a package for bringing the LEGO® experience into the R and [tidyverse](https://www.tidyverse.org/) ecosystem.
|
||||
|
||||
The package is divided into 3 separate systems:
|
||||
The package is divided into 2 systems:
|
||||
|
||||
- [**Mosaics**](#mosaics): Convert image files into mosaics that could be built using LEGO® bricks.
|
||||
- [**3D Models**](#3d-models): Build 3D LEGO® models from data tables using [rgl](https://cran.r-project.org/web/packages/rgl/index.html).
|
||||
- [**Charts**](#charts): COMING SOON: A [ggplot2](https://ggplot2.tidyverse.org/) extension to generate plots that resemble LEGO® bricks.
|
||||
|
||||
brickr also includes tools help users create the Mosaics and 3D model output using real LEGO® elements.
|
||||
|
||||
@@ -42,18 +41,15 @@ The goal of **brickr** is to provide a series of tools to integrate the LEGO®
|
||||
|
||||
- Enhancing a real world building experience with mosaics, generated instructions, and piece counts.
|
||||
- Generating interest in R and coding for new audiences with easy-to-create 3D models.
|
||||
- or just embracing pure novelty.
|
||||
- Embracing pure novelty.
|
||||
|
||||
*brickr is developed under the [Fair Play](https://www.lego.com/en-us/legal/notices-and-policies/fair-play/) policy using publicly available information about LEGO® products. brickr is not affiliated with The LEGO Group.*
|
||||
|
||||
## Installation
|
||||
``` r
|
||||
# To install the latest version from Github:
|
||||
# install.packages("devtools")
|
||||
devtools::install_github("ryantimpe/brickr")
|
||||
|
||||
#For 3D features, rayshader is also required.
|
||||
install.packages("rayshader")
|
||||
# install.packages("remotes")
|
||||
remotes::install_github("ryantimpe/brickr")
|
||||
```
|
||||
|
||||
## Mosaics
|
||||
@@ -89,12 +85,12 @@ The `bricks_from_*` series of functions creates 3D models of LEGO bricks from a
|
||||
|
||||
- `bricks_from_table()` & `bricks_from_excel()` convert a matrix-shaped table of integers into LEGO bricks. For simple models, this table can be made manually using `data.frame()` or `tibble::tribble()`. For more advanced models, it's recommended you use MS Excel or a .csv file. The left-most column in the table is associated with the Level or z-axis of the model. `bricks_from_excel()` is a wrapper function to more easily build models designed using a Microsoft Excel template. Please see this repo: [brickr toybox](https://github.com/ryantimpe/brickr_toybox).
|
||||
|
||||
- `bricks_from_coords()` takes a data frame with `x`, `y`, & `z` integer values, and `Color` columns, where each combination of x, y, & z is a point in 3-dimensional space. Color must be an official LEGO color name from `build_colors()`. This format is much more flexible than `bricks_from_table()` and allows the programmatic development of 3D models.
|
||||
- `bricks_from_coords()` takes a data frame with `x`, `y`, & `z` integer values, and `Color` columns, where each combination of x, y, & z is a point in 3-dimensional space. Color must be an official LEGO color name from `build_colors()`. This format is much more flexible than `bricks_from_table()` and allows the programmatic development of 3D models. For other options, see the "Piece type in 3D Models" vignette.
|
||||
|
||||
- `bricks_from_mosaic()` converts a 2D [mosaic](#mosaics) object from an image into 3D LEGO models, respectively. `bricks_from_rayshader()` creates a LEGO model from the same input as `rayshader::plot_3d()`.
|
||||
- `bricks_from_mosaic()` converts a 2D [mosaic](#mosaics) object from an image into 3D LEGO models, respectively.
|
||||
|
||||
Pass the output from any `bricks_from_*()` function to `build_bricks()` to see the 3D model.
|
||||
Models are currently rendered in **rgl**. Previous versions of brickr use [Tyler Morgan-Wall](https://twitter.com/tylermorganwall)'s [rayshader](https://www.rayshader.com/) package. This option is still available by passing the output from any `bricks_from_*()` function to `build_bricks_rayshader()`. Rayshader can still be used for saving snapshots and creating animations.
|
||||
Models are rendered in **rgl**.
|
||||
|
||||
```{r bricks_1, rgl=TRUE, dev='png', echo=TRUE, warning=FALSE, message=FALSE, fig.width=3, fig.height=3}
|
||||
library(brickr)
|
||||
@@ -195,9 +191,7 @@ The option `outline_bricks = TRUE` adds a black outline around the edges of the
|
||||
|
||||
More examples using `bricks_from_table()` and `bricks_from_coords()` can be found at the links below.
|
||||
|
||||
- [**Get started**](https://gist.github.com/ryantimpe/a784beaa4f798f57010369329d46ce71) with the framework for building a brick from scratch.
|
||||
- [**Build an owl**](https://gist.github.com/ryantimpe/ceab2ed6b8a4737077280fc9b0d1c886) with `bricks_from_table()` by manually placing each brick.
|
||||
- Generate a punny [**random forest model**](https://gist.github.com/ryantimpe/a7363a5e99dceabada150a43925beec7) using `bricks_from_coords()` and {purrr}.
|
||||
- [**Baby Yoda**](https://gist.github.com/ryantimpe/3893fdd0f94138d027bae35bf38b57c7) example using `bricks_from_excel()` with an animation.
|
||||
- [**brickr toybox**](https://github.com/ryantimpe/brickr_toybox) repo for tools and resources to get started.
|
||||
|
||||
## IRL
|
||||
@@ -219,3 +213,9 @@ Use `build_pieces()` to generate a graphic and count of all required plates or b
|
||||
```{r m1_pieces, fig.width = 8, fig.height=7, message = FALSE, warning = FALSE}
|
||||
mosaic1 %>% build_pieces()
|
||||
```
|
||||
|
||||
## Acknowledgements
|
||||
|
||||
3D models in brickr would not exist without [Tyler Morgan-Wall](https://twitter.com/tylermorganwall) and his [rayshader](https://www.rayshader.com/) package. If you're interested in creating any time of 3D models in R, check out his [rayrender](https://www.rayrender.net/) package.
|
||||
|
||||
All functions in brickr are created with the [tidyverse](https://www.tidyverse.org/) and [rgl](https://cran.r-project.org/web/packages/rgl/index.html).
|
||||
|
||||
51
README.md
@@ -16,15 +16,12 @@ status](https://travis-ci.org/ryantimpe/brickr.svg?branch=master)](https://travi
|
||||
**brickr** is a package for bringing the LEGO® experience into the R and
|
||||
[tidyverse](https://www.tidyverse.org/) ecosystem.
|
||||
|
||||
The package is divided into 3 separate systems:
|
||||
The package is divided into 2 systems:
|
||||
|
||||
- [**Mosaics**](#mosaics): Convert image files into mosaics that could
|
||||
be built using LEGO® bricks.
|
||||
- [**3D Models**](#3d-models): Build 3D LEGO® models from data tables
|
||||
using [rgl](https://cran.r-project.org/web/packages/rgl/index.html).
|
||||
- [**Charts**](#charts): COMING SOON: A
|
||||
[ggplot2](https://ggplot2.tidyverse.org/) extension to generate
|
||||
plots that resemble LEGO® bricks.
|
||||
|
||||
brickr also includes tools help users create the Mosaics and 3D model
|
||||
output using real LEGO® elements.
|
||||
@@ -40,7 +37,7 @@ LEGO® system with R by:
|
||||
instructions, and piece counts.
|
||||
- Generating interest in R and coding for new audiences with
|
||||
easy-to-create 3D models.
|
||||
- or just embracing pure novelty.
|
||||
- Embracing pure novelty.
|
||||
|
||||
*brickr is developed under the [Fair
|
||||
Play](https://www.lego.com/en-us/legal/notices-and-policies/fair-play/)
|
||||
@@ -51,11 +48,8 @@ is not affiliated with The LEGO Group.*
|
||||
|
||||
``` r
|
||||
# To install the latest version from Github:
|
||||
# install.packages("devtools")
|
||||
devtools::install_github("ryantimpe/brickr")
|
||||
|
||||
#For 3D features, rayshader is also required.
|
||||
install.packages("rayshader")
|
||||
# install.packages("remotes")
|
||||
remotes::install_github("ryantimpe/brickr")
|
||||
```
|
||||
|
||||
## Mosaics
|
||||
@@ -121,21 +115,14 @@ from a variety of input formats.
|
||||
& z is a point in 3-dimensional space. Color must be an official
|
||||
LEGO color name from `build_colors()`. This format is much more
|
||||
flexible than `bricks_from_table()` and allows the programmatic
|
||||
development of 3D models.
|
||||
development of 3D models. For other options, see the “Piece type in
|
||||
3D Models” vignette.
|
||||
|
||||
- `bricks_from_mosaic()` converts a 2D [mosaic](#mosaics) object from
|
||||
an image into 3D LEGO models, respectively.
|
||||
`bricks_from_rayshader()` creates a LEGO model from the same input
|
||||
as `rayshader::plot_3d()`.
|
||||
|
||||
Pass the output from any `bricks_from_*()` function to `build_bricks()`
|
||||
to see the 3D model. Models are currently rendered in **rgl**. Previous
|
||||
versions of brickr use [Tyler
|
||||
Morgan-Wall](https://twitter.com/tylermorganwall)’s
|
||||
[rayshader](https://www.rayshader.com/) package. This option is still
|
||||
available by passing the output from any `bricks_from_*()` function to
|
||||
`build_bricks_rayshader()`. Rayshader can still be used for saving
|
||||
snapshots and creating animations.
|
||||
to see the 3D model. Models are rendered in **rgl**.
|
||||
|
||||
``` r
|
||||
library(brickr)
|
||||
@@ -251,15 +238,9 @@ more cartoon fashion.
|
||||
More examples using `bricks_from_table()` and `bricks_from_coords()` can
|
||||
be found at the links below.
|
||||
|
||||
- [**Get
|
||||
started**](https://gist.github.com/ryantimpe/a784beaa4f798f57010369329d46ce71)
|
||||
with the framework for building a brick from scratch.
|
||||
- [**Build an
|
||||
owl**](https://gist.github.com/ryantimpe/ceab2ed6b8a4737077280fc9b0d1c886)
|
||||
with `bricks_from_table()` by manually placing each brick.
|
||||
- Generate a punny [**random forest
|
||||
model**](https://gist.github.com/ryantimpe/a7363a5e99dceabada150a43925beec7)
|
||||
using `bricks_from_coords()` and {purrr}.
|
||||
- [**Baby
|
||||
Yoda**](https://gist.github.com/ryantimpe/3893fdd0f94138d027bae35bf38b57c7)
|
||||
example using `bricks_from_excel()` with an animation.
|
||||
- [**brickr toybox**](https://github.com/ryantimpe/brickr_toybox) repo
|
||||
for tools and resources to get started.
|
||||
|
||||
@@ -294,3 +275,15 @@ mosaic1 %>% build_pieces()
|
||||
```
|
||||
|
||||
<!-- -->
|
||||
|
||||
## Acknowledgements
|
||||
|
||||
3D models in brickr would not exist without [Tyler
|
||||
Morgan-Wall](https://twitter.com/tylermorganwall) and his
|
||||
[rayshader](https://www.rayshader.com/) package. If you’re interested in
|
||||
creating any time of 3D models in R, check out his
|
||||
[rayrender](https://www.rayrender.net/) package.
|
||||
|
||||
All functions in brickr are created with the
|
||||
[tidyverse](https://www.tidyverse.org/) and
|
||||
[rgl](https://cran.r-project.org/web/packages/rgl/index.html).
|
||||
|
||||
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 14 KiB |
|
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 21 KiB |
|
Before Width: | Height: | Size: 9.6 KiB After Width: | Height: | Size: 9.6 KiB |
@@ -11,14 +11,6 @@ reference:
|
||||
contents:
|
||||
- starts_with("bricks_")
|
||||
- build_bricks
|
||||
- build_bricks_rayshader
|
||||
- title: ggplot Extension
|
||||
desc: Brick bar charts in ggplot
|
||||
contents:
|
||||
- starts_with("coord_")
|
||||
- starts_with("geom_")
|
||||
- starts_with("scale_")
|
||||
- starts_with("theme_")
|
||||
- title: Bricks IRL
|
||||
desc: Helper functions to create bricks and build them IRL.
|
||||
contents:
|
||||
|
||||
@@ -78,7 +78,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="http://brickr.org/index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -110,7 +110,7 @@
|
||||
<a href="articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -78,7 +78,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -110,7 +110,7 @@
|
||||
<a href="articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -78,7 +78,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -110,7 +110,7 @@
|
||||
<a href="articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -78,7 +78,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -110,7 +110,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
@@ -160,6 +160,7 @@
|
||||
<li><a href="models-from-tables.html">3D models from tables</a></li>
|
||||
<li><a href="models-from-program.html">3D Models programmatically</a></li>
|
||||
<li><a href="models-from-other.html">3D Models from mosaics</a></li>
|
||||
<li><a href="models-piece-type.html">Piece type in 3D Models</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -71,7 +71,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -71,7 +71,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 48 KiB |
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 63 KiB After Width: | Height: | Size: 61 KiB |
@@ -39,7 +39,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -71,7 +71,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
423
docs/articles/models-piece-type.html
Normal file
@@ -0,0 +1,423 @@
|
||||
<!DOCTYPE html>
|
||||
<!-- Generated by pkgdown: do not edit by hand --><html lang="en">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
||||
<meta charset="utf-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Piece type in 3D Models • brickr</title>
|
||||
<!-- favicons --><link rel="icon" type="image/png" sizes="16x16" href="../favicon-16x16.png">
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="../favicon-32x32.png">
|
||||
<link rel="apple-touch-icon" type="image/png" sizes="180x180" href="../apple-touch-icon.png">
|
||||
<link rel="apple-touch-icon" type="image/png" sizes="120x120" href="../apple-touch-icon-120x120.png">
|
||||
<link rel="apple-touch-icon" type="image/png" sizes="76x76" href="../apple-touch-icon-76x76.png">
|
||||
<link rel="apple-touch-icon" type="image/png" sizes="60x60" href="../apple-touch-icon-60x60.png">
|
||||
<!-- jquery --><script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js" integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8=" crossorigin="anonymous"></script><!-- Bootstrap --><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha256-916EbMg70RQy9LHiGkXzG8hSg9EdNy97GazNG/aiY1w=" crossorigin="anonymous">
|
||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha256-U5ZEeKfGNOja007MMD3YBI0A3OSZOQbeG6z2f2Y0hu8=" crossorigin="anonymous"></script><!-- Font Awesome icons --><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.7.1/css/all.min.css" integrity="sha256-nAmazAk6vS34Xqo0BSrTb+abbtFlgsFK7NKSi6o7Y78=" crossorigin="anonymous">
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.7.1/css/v4-shims.min.css" integrity="sha256-6qHlizsOWFskGlwVOKuns+D1nB6ssZrHQrNj1wGplHc=" crossorigin="anonymous">
|
||||
<!-- clipboard.js --><script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.4/clipboard.min.js" integrity="sha256-FiZwavyI2V6+EXO1U+xzLG3IKldpiTFf3153ea9zikQ=" crossorigin="anonymous"></script><!-- headroom.js --><script src="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.9.4/headroom.min.js" integrity="sha256-DJFC1kqIhelURkuza0AvYal5RxMtpzLjFhsnVIeuk+U=" crossorigin="anonymous"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/headroom/0.9.4/jQuery.headroom.min.js" integrity="sha256-ZX/yNShbjqsohH1k95liqY9Gd8uOiE1S4vZc+9KQ1K4=" crossorigin="anonymous"></script><!-- pkgdown --><link href="../pkgdown.css" rel="stylesheet">
|
||||
<script src="../pkgdown.js"></script><link href="../extra.css" rel="stylesheet">
|
||||
<meta property="og:title" content="Piece type in 3D Models">
|
||||
<meta property="og:description" content="">
|
||||
<meta property="og:image" content="http://brickr.org/logo.png">
|
||||
<meta name="twitter:card" content="summary">
|
||||
<!-- mathjax --><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js" integrity="sha256-nvJJv9wWKEm88qvoQl9ekL2J+k/RWIsaSScxxlsrv8k=" crossorigin="anonymous"></script><script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/config/TeX-AMS-MML_HTMLorMML.js" integrity="sha256-84DKXVJXs0/F8OTMzX4UR909+jtl4G7SPypPavF+GfA=" crossorigin="anonymous"></script><!--[if lt IE 9]>
|
||||
<script src="https://oss.maxcdn.com/html5shiv/3.7.3/html5shiv.min.js"></script>
|
||||
<script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
|
||||
<![endif]-->
|
||||
</head>
|
||||
<body>
|
||||
<div class="container template-article">
|
||||
<header><div class="navbar navbar-default navbar-fixed-top" role="navigation">
|
||||
<div class="container">
|
||||
<div class="navbar-header">
|
||||
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false">
|
||||
<span class="sr-only">Toggle navigation</span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
<span class="icon-bar"></span>
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div id="navbar" class="navbar-collapse collapse">
|
||||
<ul class="nav navbar-nav">
|
||||
<li>
|
||||
<a href="../index.html">
|
||||
<span class="fas fa fas fa-home fa-lg"></span>
|
||||
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../reference/index.html">Reference</a>
|
||||
</li>
|
||||
<li class="dropdown">
|
||||
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">
|
||||
Articles
|
||||
|
||||
<span class="caret"></span>
|
||||
</a>
|
||||
<ul class="dropdown-menu" role="menu">
|
||||
<li>
|
||||
<a href="../articles/models-from-other.html">3D Models from mosaics</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-from-program.html">3D Models programmatically</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../news/index.html">Changelog</a>
|
||||
</li>
|
||||
</ul>
|
||||
<ul class="nav navbar-nav navbar-right">
|
||||
<li>
|
||||
<a href="https://github.com/ryantimpe/brickr">
|
||||
<span class="fab fa fab fa-github fa-lg"></span>
|
||||
|
||||
</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<!--/.nav-collapse -->
|
||||
</div>
|
||||
<!--/.container -->
|
||||
</div>
|
||||
<!--/.navbar -->
|
||||
|
||||
|
||||
|
||||
</header><div class="row">
|
||||
<div class="col-md-9 contents">
|
||||
<div class="page-header toc-ignore">
|
||||
<h1>Piece type in 3D Models</h1>
|
||||
|
||||
|
||||
<small class="dont-index">Source: <a href="https://github.com/ryantimpe/brickr/blob/master/vignettes/models-piece-type.Rmd"><code>vignettes/models-piece-type.Rmd</code></a></small>
|
||||
<div class="hidden name"><code>models-piece-type.Rmd</code></div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div id="getting-started" class="section level2">
|
||||
<h2 class="hasAnchor">
|
||||
<a href="#getting-started" class="anchor"></a>Getting started</h2>
|
||||
<p>Models in brickr default to rendering rectangular LEGO bricks. Other LEGO shapes are possible in both <code><a href="../reference/bricks_from_coords.html">bricks_from_coords()</a></code> and <code><a href="../reference/bricks_from_table.html">bricks_from_table()</a></code> or <code><a href="../reference/bricks_from_excel.html">bricks_from_excel()</a></code>.</p>
|
||||
<p>Piece shapes in models are driven the <code>piece_type</code> ID.</p>
|
||||
</div>
|
||||
<div id="all-piece-options" class="section level2">
|
||||
<h2 class="hasAnchor">
|
||||
<a href="#all-piece-options" class="anchor"></a>All piece options</h2>
|
||||
<p>Currently there are 5 unique piece shapes in brickr. Some shapes can have different orientations, which is also determined by the <code>piece_type</code> column.</p>
|
||||
<table class="table">
|
||||
<thead><tr class="header">
|
||||
<th align="left">Piece</th>
|
||||
<th align="left">piece_type</th>
|
||||
<th align="left">Area</th>
|
||||
<th align="left">Height</th>
|
||||
<th align="left">Orientation</th>
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr class="odd">
|
||||
<td align="left">Brick (classic)</td>
|
||||
<td align="left">‘b’</td>
|
||||
<td align="left">any</td>
|
||||
<td align="left">1</td>
|
||||
<td align="left">–</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td align="left">Plate (flat brick)</td>
|
||||
<td align="left">‘p’</td>
|
||||
<td align="left">any</td>
|
||||
<td align="left">1/3</td>
|
||||
<td align="left">–</td>
|
||||
</tr>
|
||||
<tr class="odd">
|
||||
<td align="left">Round 1x1 (cylinder)</td>
|
||||
<td align="left">‘c1’</td>
|
||||
<td align="left">1</td>
|
||||
<td align="left">1</td>
|
||||
<td align="left">–</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td align="left">Round 1x1 (cone)</td>
|
||||
<td align="left">‘c2’</td>
|
||||
<td align="left">1</td>
|
||||
<td align="left">1</td>
|
||||
<td align="left">–</td>
|
||||
</tr>
|
||||
<tr class="odd">
|
||||
<td align="left">Cheese slope</td>
|
||||
<td align="left">‘w1’</td>
|
||||
<td align="left">1</td>
|
||||
<td align="left">2/3</td>
|
||||
<td align="left">north</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td align="left">Cheese slope</td>
|
||||
<td align="left">‘w2’</td>
|
||||
<td align="left">1</td>
|
||||
<td align="left">2/3</td>
|
||||
<td align="left">east</td>
|
||||
</tr>
|
||||
<tr class="odd">
|
||||
<td align="left">Cheese slope</td>
|
||||
<td align="left">‘w3’</td>
|
||||
<td align="left">1</td>
|
||||
<td align="left">2/3</td>
|
||||
<td align="left">south</td>
|
||||
</tr>
|
||||
<tr class="even">
|
||||
<td align="left">Cheese slope</td>
|
||||
<td align="left">‘w4’</td>
|
||||
<td align="left">1</td>
|
||||
<td align="left">2/3</td>
|
||||
<td align="left">west</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="sourceCode" id="cb1"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb1-1" title="1"></a>
|
||||
<a class="sourceLine" id="cb1-2" title="2"><span class="kw"><a href="https://rdrr.io/r/base/expand.grid.html">expand.grid</a></span>(</a>
|
||||
<a class="sourceLine" id="cb1-3" title="3"> <span class="dt">x =</span> <span class="dv">1</span><span class="op">:</span><span class="dv">4</span> <span class="op">*</span><span class="st"> </span><span class="dv">2</span>,</a>
|
||||
<a class="sourceLine" id="cb1-4" title="4"> <span class="dt">y =</span> <span class="dv">1</span><span class="op">:</span><span class="dv">2</span> <span class="op">*</span><span class="st"> </span><span class="dv">2</span>,</a>
|
||||
<a class="sourceLine" id="cb1-5" title="5"> <span class="dt">z =</span> <span class="dv">1</span>) <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb1-6" title="6"><span class="st"> </span>dplyr<span class="op">::</span><span class="kw"><a href="https://dplyr.tidyverse.org/reference/mutate.html">mutate</a></span>(<span class="dt">Color =</span> <span class="kw"><a href="https://rdrr.io/r/utils/head.html">head</a></span>(lego_colors<span class="op">$</span>Color, <span class="dv">8</span>),</a>
|
||||
<a class="sourceLine" id="cb1-7" title="7"> <span class="dt">piece_type =</span> <span class="kw"><a href="https://rdrr.io/r/base/c.html">c</a></span>(<span class="st">"b"</span>, <span class="st">"p"</span>, <span class="st">"c1"</span>, <span class="st">"c2"</span>, <span class="st">"w1"</span>, <span class="st">"w2"</span>, <span class="st">"w3"</span>, <span class="st">"w4"</span>)) <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb1-8" title="8"><span class="st"> </span><span class="kw"><a href="../reference/bricks_from_coords.html">bricks_from_coords</a></span>() <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb1-9" title="9"><span class="st"> </span><span class="kw"><a href="../reference/build_bricks.html">build_bricks</a></span>(<span class="dt">rgl_lit =</span> <span class="ot">FALSE</span>, <span class="dt">outline_bricks =</span> <span class="ot">TRUE</span>)</a>
|
||||
<a class="sourceLine" id="cb1-10" title="10"></a>
|
||||
<a class="sourceLine" id="cb1-11" title="11">rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/par3d.html">par3d</a></span>(<span class="dt">userMatrix =</span> rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/matrices.html">rotate3d</a></span>(rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/par3d.html">par3d</a></span>(<span class="st">"userMatrix"</span>), <span class="fl">1.1</span><span class="op">*</span>pi, <span class="dv">0</span>, <span class="dv">0</span> ,<span class="dv">1</span>))</a></code></pre></div>
|
||||
<p><img src="models-piece-type_files/figure-html/bricks_2a-1.png" width="384"></p>
|
||||
</div>
|
||||
<div id="bricks-from-coordinates" class="section level2">
|
||||
<h2 class="hasAnchor">
|
||||
<a href="#bricks-from-coordinates" class="anchor"></a>Bricks from coordinates</h2>
|
||||
<p>Changing the piece type in <code><a href="../reference/bricks_from_coords.html">bricks_from_coords()</a></code> is the most straight-forward, so let’s begin there.</p>
|
||||
<div id="changing-the-default-brick" class="section level3">
|
||||
<h3 class="hasAnchor">
|
||||
<a href="#changing-the-default-brick" class="anchor"></a>Changing the default brick</h3>
|
||||
<p>Start with a simple programmed model to create a classic 2x4 red brick.</p>
|
||||
<div class="sourceCode" id="cb2"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb2-1" title="1"></a>
|
||||
<a class="sourceLine" id="cb2-2" title="2"><span class="kw"><a href="https://rdrr.io/r/base/expand.grid.html">expand.grid</a></span>(</a>
|
||||
<a class="sourceLine" id="cb2-3" title="3"> <span class="dt">x =</span> <span class="dv">1</span><span class="op">:</span><span class="dv">4</span>,</a>
|
||||
<a class="sourceLine" id="cb2-4" title="4"> <span class="dt">y =</span> <span class="dv">1</span><span class="op">:</span><span class="dv">2</span>,</a>
|
||||
<a class="sourceLine" id="cb2-5" title="5"> <span class="dt">z =</span> <span class="dv">1</span>,</a>
|
||||
<a class="sourceLine" id="cb2-6" title="6"> <span class="dt">Color =</span> <span class="st">"Bright red"</span></a>
|
||||
<a class="sourceLine" id="cb2-7" title="7">) <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb2-8" title="8"><span class="st"> </span><span class="kw"><a href="../reference/bricks_from_coords.html">bricks_from_coords</a></span>() <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb2-9" title="9"><span class="st"> </span><span class="kw"><a href="../reference/build_bricks.html">build_bricks</a></span>()</a>
|
||||
<a class="sourceLine" id="cb2-10" title="10"></a>
|
||||
<a class="sourceLine" id="cb2-11" title="11">rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/par3d.html">par3d</a></span>(<span class="dt">userMatrix =</span> rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/matrices.html">rotate3d</a></span>(rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/par3d.html">par3d</a></span>(<span class="st">"userMatrix"</span>), <span class="fl">1.1</span><span class="op">*</span>pi<span class="op">/</span><span class="dv">4</span>, <span class="dv">0</span>, <span class="dv">0</span> ,<span class="dv">1</span>))</a></code></pre></div>
|
||||
<p><img src="models-piece-type_files/figure-html/bricks_1-1.png" width="384"></p>
|
||||
<p>Add a new column, <code>piece_type</code>, you can change this default shape. Set <code>piece_type = "p"</code> to create a 2x4 plate instead. A LEGO plate is 1/3 the height of a brick.</p>
|
||||
<div class="sourceCode" id="cb3"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb3-1" title="1"></a>
|
||||
<a class="sourceLine" id="cb3-2" title="2"><span class="kw"><a href="https://rdrr.io/r/base/expand.grid.html">expand.grid</a></span>(</a>
|
||||
<a class="sourceLine" id="cb3-3" title="3"> <span class="dt">x =</span> <span class="dv">1</span><span class="op">:</span><span class="dv">4</span>,</a>
|
||||
<a class="sourceLine" id="cb3-4" title="4"> <span class="dt">y =</span> <span class="dv">1</span><span class="op">:</span><span class="dv">2</span>,</a>
|
||||
<a class="sourceLine" id="cb3-5" title="5"> <span class="dt">z =</span> <span class="dv">1</span>,</a>
|
||||
<a class="sourceLine" id="cb3-6" title="6"> <span class="dt">Color =</span> <span class="st">"Bright red"</span></a>
|
||||
<a class="sourceLine" id="cb3-7" title="7">) <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb3-8" title="8"><span class="st"> </span>dplyr<span class="op">::</span><span class="kw"><a href="https://dplyr.tidyverse.org/reference/mutate.html">mutate</a></span>(<span class="dt">piece_type =</span> <span class="st">"p"</span>) <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb3-9" title="9"><span class="st"> </span><span class="kw"><a href="../reference/bricks_from_coords.html">bricks_from_coords</a></span>() <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb3-10" title="10"><span class="st"> </span><span class="kw"><a href="../reference/build_bricks.html">build_bricks</a></span>()</a>
|
||||
<a class="sourceLine" id="cb3-11" title="11"></a>
|
||||
<a class="sourceLine" id="cb3-12" title="12">rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/par3d.html">par3d</a></span>(<span class="dt">userMatrix =</span> rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/matrices.html">rotate3d</a></span>(rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/par3d.html">par3d</a></span>(<span class="st">"userMatrix"</span>), <span class="fl">1.1</span><span class="op">*</span>pi<span class="op">/</span><span class="dv">4</span>, <span class="dv">0</span>, <span class="dv">0</span> ,<span class="dv">1</span>))</a></code></pre></div>
|
||||
<p><img src="models-piece-type_files/figure-html/bricks_2-1.png" width="384"></p>
|
||||
</div>
|
||||
</div>
|
||||
<div id="bricks-from-tables" class="section level2">
|
||||
<h2 class="hasAnchor">
|
||||
<a href="#bricks-from-tables" class="anchor"></a>Bricks from tables</h2>
|
||||
<p>Including piece options in <code><a href="../reference/bricks_from_table.html">bricks_from_table()</a></code> or <code><a href="../reference/bricks_from_excel.html">bricks_from_excel()</a></code> is slightly more involved because the input tables are two-dimensional for easier drawing.</p>
|
||||
<p>In these functions, use the input <code>piece_table</code> to supply an identically shaped table with optional <code>piece_type</code> ids instead of numbers.</p>
|
||||
<p>Start with this data frame called tree_or_mushroom.</p>
|
||||
<div class="sourceCode" id="cb4"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb4-1" title="1">tree_or_mushroom <-<span class="st"> </span>tibble<span class="op">::</span><span class="kw"><a href="https://tibble.tidyverse.org/reference/tribble.html">tribble</a></span>(</a>
|
||||
<a class="sourceLine" id="cb4-2" title="2"> <span class="op">~</span>Level, <span class="op">~</span>X1, <span class="op">~</span>X2, <span class="op">~</span>X3, <span class="op">~</span>X4, <span class="op">~</span>X5, <span class="op">~</span>X6,</a>
|
||||
<a class="sourceLine" id="cb4-3" title="3"> <span class="st">"A"</span>, <span class="dv">1</span>, <span class="dv">1</span>, <span class="dv">1</span>, <span class="dv">1</span>, <span class="dv">1</span>, <span class="dv">1</span>, </a>
|
||||
<a class="sourceLine" id="cb4-4" title="4"> <span class="st">"A"</span>, <span class="dv">1</span>, <span class="dv">1</span>, <span class="dv">1</span>, <span class="dv">1</span>, <span class="dv">1</span>, <span class="dv">1</span>, </a>
|
||||
<a class="sourceLine" id="cb4-5" title="5"> <span class="st">"A"</span>, <span class="dv">1</span>, <span class="dv">1</span>, <span class="dv">1</span>, <span class="dv">1</span>, <span class="dv">1</span>, <span class="dv">1</span>, </a>
|
||||
<a class="sourceLine" id="cb4-6" title="6"> <span class="st">"A"</span>, <span class="dv">1</span>, <span class="dv">1</span>, <span class="dv">1</span>, <span class="dv">1</span>, <span class="dv">1</span>, <span class="dv">1</span>, </a>
|
||||
<a class="sourceLine" id="cb4-7" title="7"> <span class="st">"B"</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, </a>
|
||||
<a class="sourceLine" id="cb4-8" title="8"> <span class="st">"B"</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">2</span>, <span class="dv">2</span>, <span class="dv">0</span>, <span class="dv">0</span>,</a>
|
||||
<a class="sourceLine" id="cb4-9" title="9"> <span class="st">"B"</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">2</span>, <span class="dv">2</span>, <span class="dv">0</span>, <span class="dv">0</span>, </a>
|
||||
<a class="sourceLine" id="cb4-10" title="10"> <span class="st">"B"</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, </a>
|
||||
<a class="sourceLine" id="cb4-11" title="11"> <span class="st">"C"</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, </a>
|
||||
<a class="sourceLine" id="cb4-12" title="12"> <span class="st">"C"</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">2</span>, <span class="dv">2</span>, <span class="dv">0</span>, <span class="dv">0</span>,</a>
|
||||
<a class="sourceLine" id="cb4-13" title="13"> <span class="st">"C"</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">2</span>, <span class="dv">2</span>, <span class="dv">0</span>, <span class="dv">0</span>, </a>
|
||||
<a class="sourceLine" id="cb4-14" title="14"> <span class="st">"C"</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, </a>
|
||||
<a class="sourceLine" id="cb4-15" title="15"> <span class="st">"D"</span>, <span class="dv">0</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">0</span>, </a>
|
||||
<a class="sourceLine" id="cb4-16" title="16"> <span class="st">"D"</span>, <span class="dv">0</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">0</span>,</a>
|
||||
<a class="sourceLine" id="cb4-17" title="17"> <span class="st">"D"</span>, <span class="dv">0</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">0</span>, </a>
|
||||
<a class="sourceLine" id="cb4-18" title="18"> <span class="st">"D"</span>, <span class="dv">0</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">0</span>,</a>
|
||||
<a class="sourceLine" id="cb4-19" title="19"> <span class="st">"E"</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">0</span>, <span class="dv">0</span>, </a>
|
||||
<a class="sourceLine" id="cb4-20" title="20"> <span class="st">"E"</span>, <span class="dv">0</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">0</span>,</a>
|
||||
<a class="sourceLine" id="cb4-21" title="21"> <span class="st">"E"</span>, <span class="dv">0</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">0</span>, </a>
|
||||
<a class="sourceLine" id="cb4-22" title="22"> <span class="st">"E"</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">0</span>, <span class="dv">0</span>,</a>
|
||||
<a class="sourceLine" id="cb4-23" title="23"> <span class="st">"F"</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, </a>
|
||||
<a class="sourceLine" id="cb4-24" title="24"> <span class="st">"F"</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">0</span>, <span class="dv">0</span>,</a>
|
||||
<a class="sourceLine" id="cb4-25" title="25"> <span class="st">"F"</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">3</span>, <span class="dv">3</span>, <span class="dv">0</span>, <span class="dv">0</span>, </a>
|
||||
<a class="sourceLine" id="cb4-26" title="26"> <span class="st">"F"</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>,</a>
|
||||
<a class="sourceLine" id="cb4-27" title="27"> <span class="st">"G"</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, </a>
|
||||
<a class="sourceLine" id="cb4-28" title="28"> <span class="st">"G"</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">3</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>,</a>
|
||||
<a class="sourceLine" id="cb4-29" title="29"> <span class="st">"G"</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">3</span>, <span class="dv">0</span>, <span class="dv">0</span>, </a>
|
||||
<a class="sourceLine" id="cb4-30" title="30"> <span class="st">"G"</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span>, <span class="dv">0</span></a>
|
||||
<a class="sourceLine" id="cb4-31" title="31">)</a>
|
||||
<a class="sourceLine" id="cb4-32" title="32"></a>
|
||||
<a class="sourceLine" id="cb4-33" title="33">brick_colors <-<span class="st"> </span>tibble<span class="op">::</span><span class="kw"><a href="https://tibble.tidyverse.org/reference/tribble.html">tribble</a></span>(</a>
|
||||
<a class="sourceLine" id="cb4-34" title="34"> <span class="op">~</span><span class="st">`</span><span class="dt">.value</span><span class="st">`</span>, <span class="op">~</span>Color,</a>
|
||||
<a class="sourceLine" id="cb4-35" title="35"> <span class="dv">1</span>, <span class="st">"Bright green"</span>,</a>
|
||||
<a class="sourceLine" id="cb4-36" title="36"> <span class="dv">2</span>, <span class="st">"Dark orange"</span>,</a>
|
||||
<a class="sourceLine" id="cb4-37" title="37"> <span class="dv">3</span>, <span class="st">"Dark green"</span></a>
|
||||
<a class="sourceLine" id="cb4-38" title="38">)</a>
|
||||
<a class="sourceLine" id="cb4-39" title="39"></a>
|
||||
<a class="sourceLine" id="cb4-40" title="40">tree_or_mushroom <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb4-41" title="41"><span class="st"> </span><span class="kw"><a href="../reference/bricks_from_table.html">bricks_from_table</a></span>(brick_colors) <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb4-42" title="42"><span class="st"> </span><span class="kw"><a href="../reference/build_bricks.html">build_bricks</a></span>()</a>
|
||||
<a class="sourceLine" id="cb4-43" title="43"></a>
|
||||
<a class="sourceLine" id="cb4-44" title="44">rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/par3d.html">par3d</a></span>(<span class="dt">userMatrix =</span> rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/matrices.html">rotate3d</a></span>(rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/par3d.html">par3d</a></span>(<span class="st">"userMatrix"</span>), <span class="fl">1.1</span><span class="op">*</span>pi<span class="op">/</span><span class="dv">4</span>, <span class="dv">0</span>, <span class="dv">0</span> ,<span class="dv">1</span>))</a></code></pre></div>
|
||||
<p><img src="models-piece-type_files/figure-html/bricks_5-1.png" width="384"></p>
|
||||
<p>If you want more a tree with more texture, you can change all the “leaves” from rectangular bricks into cylinder bricks.</p>
|
||||
<div class="sourceCode" id="cb5"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb5-1" title="1">tree_or_mushroom_pieces <-<span class="st"> </span>tree_or_mushroom <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb5-2" title="2"><span class="st"> </span>dplyr<span class="op">::</span><span class="kw"><a href="https://dplyr.tidyverse.org/reference/mutate_all.html">mutate_at</a></span>(dplyr<span class="op">::</span><span class="kw"><a href="https://dplyr.tidyverse.org/reference/vars.html">vars</a></span>(dplyr<span class="op">::</span><span class="kw"><a href="https://dplyr.tidyverse.org/reference/reexports.html">starts_with</a></span>(<span class="st">"X"</span>)), </a>
|
||||
<a class="sourceLine" id="cb5-3" title="3"> <span class="op">~</span><span class="kw"><a href="https://rdrr.io/r/base/ifelse.html">ifelse</a></span>(.<span class="op">==</span><span class="dv">3</span>, <span class="st">"c2"</span>, <span class="st">"b"</span>)) <span class="co">#If the color is the dark green, make a cone, else brick</span></a>
|
||||
<a class="sourceLine" id="cb5-4" title="4"></a>
|
||||
<a class="sourceLine" id="cb5-5" title="5">tree_or_mushroom <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb5-6" title="6"><span class="st"> </span><span class="kw"><a href="../reference/bricks_from_table.html">bricks_from_table</a></span>(brick_colors,</a>
|
||||
<a class="sourceLine" id="cb5-7" title="7"> <span class="dt">piece_matrix =</span> tree_or_mushroom_pieces) <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb5-8" title="8"><span class="st"> </span><span class="kw"><a href="../reference/build_bricks.html">build_bricks</a></span>()</a>
|
||||
<a class="sourceLine" id="cb5-9" title="9"></a>
|
||||
<a class="sourceLine" id="cb5-10" title="10">rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/par3d.html">par3d</a></span>(<span class="dt">userMatrix =</span> rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/matrices.html">rotate3d</a></span>(rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/par3d.html">par3d</a></span>(<span class="st">"userMatrix"</span>), <span class="fl">1.1</span><span class="op">*</span>pi<span class="op">/</span><span class="dv">4</span>, <span class="dv">0</span>, <span class="dv">0</span> ,<span class="dv">1</span>))</a></code></pre></div>
|
||||
<p><img src="models-piece-type_files/figure-html/bricks_6-1.png" width="384"></p>
|
||||
<div id="bricks-from-excel" class="section level3">
|
||||
<h3 class="hasAnchor">
|
||||
<a href="#bricks-from-excel" class="anchor"></a>Bricks from Excel</h3>
|
||||
<p>For <code><a href="../reference/bricks_from_excel.html">bricks_from_excel()</a></code>, you only have to supply <code>piece_type</code> ids when you do NOT want the classic brick. The best option here is to create your model in the Excel template in <a href="https://github.com/ryantimpe/brickr_toybox">the brickr toybox</a> GitHub repo. Once complete, duplicate the sheet and change any color values to piece_type IDs.</p>
|
||||
</div>
|
||||
</div>
|
||||
<div id="mid-level-bricks" class="section level2">
|
||||
<h2 class="hasAnchor">
|
||||
<a href="#mid-level-bricks" class="anchor"></a>Mid-level bricks</h2>
|
||||
<p>Because different piece types have different heights, your models might have unintentional gaps when using pieces that are less than 1-unit tall.</p>
|
||||
<p>Start with this LEGO cube.</p>
|
||||
<div class="sourceCode" id="cb6"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb6-1" title="1"></a>
|
||||
<a class="sourceLine" id="cb6-2" title="2"><span class="kw"><a href="https://rdrr.io/r/base/expand.grid.html">expand.grid</a></span>(</a>
|
||||
<a class="sourceLine" id="cb6-3" title="3"> <span class="dt">x =</span> <span class="dv">1</span><span class="op">:</span><span class="dv">3</span>,</a>
|
||||
<a class="sourceLine" id="cb6-4" title="4"> <span class="dt">y =</span> <span class="dv">1</span><span class="op">:</span><span class="dv">3</span>,</a>
|
||||
<a class="sourceLine" id="cb6-5" title="5"> <span class="dt">z =</span> <span class="dv">1</span><span class="op">:</span><span class="dv">3</span>,</a>
|
||||
<a class="sourceLine" id="cb6-6" title="6"> <span class="dt">color =</span> <span class="st">"Bright blue"</span></a>
|
||||
<a class="sourceLine" id="cb6-7" title="7">) <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb6-8" title="8"><span class="st"> </span>dplyr<span class="op">::</span><span class="kw"><a href="https://dplyr.tidyverse.org/reference/mutate.html">mutate</a></span>(<span class="dt">color =</span> <span class="kw"><a href="https://rdrr.io/r/base/ifelse.html">ifelse</a></span>(z<span class="op">==</span><span class="dv">2</span>, <span class="st">"Bright red"</span>, <span class="kw"><a href="https://rdrr.io/r/base/character.html">as.character</a></span>(color))) <span class="op">%>%</span></a>
|
||||
<a class="sourceLine" id="cb6-9" title="9"><span class="st"> </span><span class="kw"><a href="../reference/bricks_from_coords.html">bricks_from_coords</a></span>() <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb6-10" title="10"><span class="st"> </span><span class="kw"><a href="../reference/build_bricks.html">build_bricks</a></span>()</a>
|
||||
<a class="sourceLine" id="cb6-11" title="11"></a>
|
||||
<a class="sourceLine" id="cb6-12" title="12">rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/par3d.html">par3d</a></span>(<span class="dt">userMatrix =</span> rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/matrices.html">rotate3d</a></span>(rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/par3d.html">par3d</a></span>(<span class="st">"userMatrix"</span>), <span class="fl">1.1</span><span class="op">*</span>pi<span class="op">/</span><span class="dv">4</span>, <span class="dv">0</span>, <span class="dv">0</span> ,<span class="dv">1</span>))</a></code></pre></div>
|
||||
<p><img src="models-piece-type_files/figure-html/bricks_10-1.png" width="384"></p>
|
||||
<p>A problem arises when we change these bricks to plates. Each z (Level) continues to be drawn at the same height and the plates are no longer stacked together.</p>
|
||||
<div class="sourceCode" id="cb7"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb7-1" title="1"></a>
|
||||
<a class="sourceLine" id="cb7-2" title="2"><span class="kw"><a href="https://rdrr.io/r/base/expand.grid.html">expand.grid</a></span>(</a>
|
||||
<a class="sourceLine" id="cb7-3" title="3"> <span class="dt">x =</span> <span class="dv">1</span><span class="op">:</span><span class="dv">3</span>,</a>
|
||||
<a class="sourceLine" id="cb7-4" title="4"> <span class="dt">y =</span> <span class="dv">1</span><span class="op">:</span><span class="dv">3</span>,</a>
|
||||
<a class="sourceLine" id="cb7-5" title="5"> <span class="dt">z =</span> <span class="dv">1</span><span class="op">:</span><span class="dv">3</span>,</a>
|
||||
<a class="sourceLine" id="cb7-6" title="6"> <span class="dt">color =</span> <span class="st">"Bright blue"</span></a>
|
||||
<a class="sourceLine" id="cb7-7" title="7">) <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb7-8" title="8"><span class="st"> </span>dplyr<span class="op">::</span><span class="kw"><a href="https://dplyr.tidyverse.org/reference/mutate.html">mutate</a></span>(<span class="dt">color =</span> <span class="kw"><a href="https://rdrr.io/r/base/ifelse.html">ifelse</a></span>(z<span class="op">==</span><span class="dv">2</span>, <span class="st">"Bright red"</span>, <span class="kw"><a href="https://rdrr.io/r/base/character.html">as.character</a></span>(color)),</a>
|
||||
<a class="sourceLine" id="cb7-9" title="9"> <span class="dt">piece_type =</span> <span class="st">"p"</span>) <span class="op">%>%</span></a>
|
||||
<a class="sourceLine" id="cb7-10" title="10"><span class="st"> </span><span class="kw"><a href="../reference/bricks_from_coords.html">bricks_from_coords</a></span>() <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb7-11" title="11"><span class="st"> </span><span class="kw"><a href="../reference/build_bricks.html">build_bricks</a></span>()</a>
|
||||
<a class="sourceLine" id="cb7-12" title="12"></a>
|
||||
<a class="sourceLine" id="cb7-13" title="13">rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/par3d.html">par3d</a></span>(<span class="dt">userMatrix =</span> rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/matrices.html">rotate3d</a></span>(rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/par3d.html">par3d</a></span>(<span class="st">"userMatrix"</span>), <span class="fl">1.1</span><span class="op">*</span>pi<span class="op">/</span><span class="dv">4</span>, <span class="dv">0</span>, <span class="dv">0</span> ,<span class="dv">1</span>))</a></code></pre></div>
|
||||
<p><img src="models-piece-type_files/figure-html/bricks_11-1.png" width="384"></p>
|
||||
<p>Each z (Level) is the height of a brick, but plates and cheese slopes have height less than a brick. To stack consecutive bricks that are now all full height, you’ll need to use a new column, <code>mid_level</code>. The <code>mid_level</code> column can be added anywhere in a <code><a href="../reference/bricks_from_coords.html">bricks_from_coords()</a></code> input or as the 2nd column after <code>Level</code> in the <code>matrix_table</code> input in <code><a href="../reference/bricks_from_table.html">bricks_from_table()</a></code> or <code><a href="../reference/bricks_from_excel.html">bricks_from_excel()</a></code>.</p>
|
||||
<p>By default, all bricks and pieces are located at <code>mid_level = 0</code>, which is the base of the z (Level). All z (Level) values have 3 possible mid_level values: 0, 1, 2.</p>
|
||||
<p>Using integer division and mods, you can convert all levels uniformly to Level + mid_levels. In future versions of brickr, there will be helper functions.</p>
|
||||
<div class="sourceCode" id="cb8"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb8-1" title="1"></a>
|
||||
<a class="sourceLine" id="cb8-2" title="2"><span class="kw"><a href="https://rdrr.io/r/base/expand.grid.html">expand.grid</a></span>(</a>
|
||||
<a class="sourceLine" id="cb8-3" title="3"> <span class="dt">x =</span> <span class="dv">1</span><span class="op">:</span><span class="dv">3</span>,</a>
|
||||
<a class="sourceLine" id="cb8-4" title="4"> <span class="dt">y =</span> <span class="dv">1</span><span class="op">:</span><span class="dv">3</span>,</a>
|
||||
<a class="sourceLine" id="cb8-5" title="5"> <span class="dt">z =</span> <span class="dv">1</span><span class="op">:</span><span class="dv">3</span>,</a>
|
||||
<a class="sourceLine" id="cb8-6" title="6"> <span class="dt">color =</span> <span class="st">"Bright blue"</span></a>
|
||||
<a class="sourceLine" id="cb8-7" title="7">) <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb8-8" title="8"><span class="st"> </span>dplyr<span class="op">::</span><span class="kw"><a href="https://dplyr.tidyverse.org/reference/mutate.html">mutate</a></span>(<span class="dt">color =</span> <span class="kw"><a href="https://rdrr.io/r/base/ifelse.html">ifelse</a></span>(z<span class="op">==</span><span class="dv">2</span>, <span class="st">"Bright red"</span>, <span class="kw"><a href="https://rdrr.io/r/base/character.html">as.character</a></span>(color)),</a>
|
||||
<a class="sourceLine" id="cb8-9" title="9"> <span class="dt">piece_type =</span> <span class="st">"p"</span>) <span class="op">%>%</span></a>
|
||||
<a class="sourceLine" id="cb8-10" title="10"><span class="st"> </span>dplyr<span class="op">::</span><span class="kw"><a href="https://dplyr.tidyverse.org/reference/mutate.html">mutate</a></span>(<span class="dt">mid_level =</span> (z<span class="dv">-1</span>) <span class="op">%%</span><span class="st"> </span><span class="dv">3</span>,</a>
|
||||
<a class="sourceLine" id="cb8-11" title="11"> <span class="dt">z =</span> (z<span class="dv">-1</span>) <span class="op">%/%</span><span class="st"> </span><span class="dv">3</span> <span class="op">+</span><span class="dv">1</span>) <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb8-12" title="12"><span class="st"> </span><span class="kw"><a href="../reference/bricks_from_coords.html">bricks_from_coords</a></span>() <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb8-13" title="13"><span class="st"> </span><span class="kw"><a href="../reference/build_bricks.html">build_bricks</a></span>()</a>
|
||||
<a class="sourceLine" id="cb8-14" title="14"></a>
|
||||
<a class="sourceLine" id="cb8-15" title="15">rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/par3d.html">par3d</a></span>(<span class="dt">userMatrix =</span> rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/matrices.html">rotate3d</a></span>(rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/par3d.html">par3d</a></span>(<span class="st">"userMatrix"</span>), <span class="fl">1.1</span><span class="op">*</span>pi<span class="op">/</span><span class="dv">4</span>, <span class="dv">0</span>, <span class="dv">0</span> ,<span class="dv">1</span>))</a></code></pre></div>
|
||||
<p><img src="models-piece-type_files/figure-html/bricks_12-1.png" width="384"></p>
|
||||
<p>It’s also possible to mix and match different z (Level) and mid_level combinations to stack plates with bricks. There are various ways to do this, depending on the complexity and your comfort with tidyverse data manipulation.</p>
|
||||
<div class="sourceCode" id="cb9"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb9-1" title="1"></a>
|
||||
<a class="sourceLine" id="cb9-2" title="2"><span class="kw"><a href="https://rdrr.io/r/base/expand.grid.html">expand.grid</a></span>(</a>
|
||||
<a class="sourceLine" id="cb9-3" title="3"> <span class="dt">x =</span> <span class="dv">1</span><span class="op">:</span><span class="dv">3</span>,</a>
|
||||
<a class="sourceLine" id="cb9-4" title="4"> <span class="dt">y =</span> <span class="dv">1</span><span class="op">:</span><span class="dv">3</span>,</a>
|
||||
<a class="sourceLine" id="cb9-5" title="5"> <span class="dt">z =</span> <span class="dv">1</span><span class="op">:</span><span class="dv">3</span>,</a>
|
||||
<a class="sourceLine" id="cb9-6" title="6"> <span class="dt">color =</span> <span class="st">"Bright blue"</span></a>
|
||||
<a class="sourceLine" id="cb9-7" title="7">) <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb9-8" title="8"><span class="st"> </span>dplyr<span class="op">::</span><span class="kw"><a href="https://dplyr.tidyverse.org/reference/mutate.html">mutate</a></span>(<span class="dt">color =</span> <span class="kw"><a href="https://rdrr.io/r/base/ifelse.html">ifelse</a></span>(z<span class="op">==</span><span class="dv">2</span>, <span class="st">"Bright red"</span>, <span class="kw"><a href="https://rdrr.io/r/base/character.html">as.character</a></span>(color)),</a>
|
||||
<a class="sourceLine" id="cb9-9" title="9"> <span class="dt">piece_type =</span> <span class="kw"><a href="https://rdrr.io/r/base/ifelse.html">ifelse</a></span>(z<span class="op">==</span><span class="dv">2</span>, <span class="st">"p"</span>, <span class="st">"b"</span>)) <span class="op">%>%</span></a>
|
||||
<a class="sourceLine" id="cb9-10" title="10"><span class="st"> </span>dplyr<span class="op">::</span><span class="kw"><a href="https://dplyr.tidyverse.org/reference/mutate.html">mutate</a></span>(</a>
|
||||
<a class="sourceLine" id="cb9-11" title="11"> <span class="dt">mid_level =</span> dplyr<span class="op">::</span><span class="kw"><a href="https://dplyr.tidyverse.org/reference/case_when.html">case_when</a></span>(</a>
|
||||
<a class="sourceLine" id="cb9-12" title="12"> z <span class="op">%in%</span><span class="st"> </span><span class="dv">1</span><span class="op">:</span><span class="dv">2</span> <span class="op">~</span><span class="st"> </span><span class="dv">0</span>, </a>
|
||||
<a class="sourceLine" id="cb9-13" title="13"> z <span class="op">==</span><span class="st"> </span><span class="dv">3</span> <span class="op">~</span><span class="st"> </span><span class="dv">1</span></a>
|
||||
<a class="sourceLine" id="cb9-14" title="14"> ), </a>
|
||||
<a class="sourceLine" id="cb9-15" title="15"> <span class="dt">z =</span> dplyr<span class="op">::</span><span class="kw"><a href="https://dplyr.tidyverse.org/reference/case_when.html">case_when</a></span>(</a>
|
||||
<a class="sourceLine" id="cb9-16" title="16"> z <span class="op">%in%</span><span class="st"> </span><span class="dv">2</span><span class="op">:</span><span class="dv">3</span> <span class="op">~</span><span class="st"> </span><span class="dv">2</span>,</a>
|
||||
<a class="sourceLine" id="cb9-17" title="17"> <span class="ot">TRUE</span> <span class="op">~</span><span class="st"> </span><span class="dv">1</span></a>
|
||||
<a class="sourceLine" id="cb9-18" title="18"> )) <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb9-19" title="19"><span class="st"> </span><span class="kw"><a href="../reference/bricks_from_coords.html">bricks_from_coords</a></span>() <span class="op">%>%</span><span class="st"> </span></a>
|
||||
<a class="sourceLine" id="cb9-20" title="20"><span class="st"> </span><span class="kw"><a href="../reference/build_bricks.html">build_bricks</a></span>()</a>
|
||||
<a class="sourceLine" id="cb9-21" title="21"></a>
|
||||
<a class="sourceLine" id="cb9-22" title="22">rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/par3d.html">par3d</a></span>(<span class="dt">userMatrix =</span> rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/matrices.html">rotate3d</a></span>(rgl<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/rgl/man/par3d.html">par3d</a></span>(<span class="st">"userMatrix"</span>), <span class="fl">1.1</span><span class="op">*</span>pi<span class="op">/</span><span class="dv">4</span>, <span class="dv">0</span>, <span class="dv">0</span> ,<span class="dv">1</span>))</a></code></pre></div>
|
||||
<p><img src="models-piece-type_files/figure-html/bricks_13-1.png" width="384"></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-3 hidden-xs hidden-sm" id="sidebar">
|
||||
|
||||
<div id="tocnav">
|
||||
<h2 class="hasAnchor">
|
||||
<a href="#tocnav" class="anchor"></a>Contents</h2>
|
||||
<ul class="nav nav-pills nav-stacked">
|
||||
<li><a href="#getting-started">Getting started</a></li>
|
||||
<li><a href="#all-piece-options">All piece options</a></li>
|
||||
<li><a href="#bricks-from-coordinates">Bricks from coordinates</a></li>
|
||||
<li><a href="#bricks-from-tables">Bricks from tables</a></li>
|
||||
<li><a href="#mid-level-bricks">Mid-level bricks</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<footer><div class="copyright">
|
||||
<p>Developed by Ryan Timpe.</p>
|
||||
</div>
|
||||
|
||||
<div class="pkgdown">
|
||||
<p>Site built with <a href="https://pkgdown.r-lib.org/">pkgdown</a> 1.4.1.</p>
|
||||
</div>
|
||||
|
||||
</footer>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
||||
</body>
|
||||
</html>
|
||||
BIN
docs/articles/models-piece-type_files/figure-html/bricks_1-1.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
|
After Width: | Height: | Size: 23 KiB |
|
After Width: | Height: | Size: 34 KiB |
|
After Width: | Height: | Size: 22 KiB |
|
After Width: | Height: | Size: 23 KiB |
BIN
docs/articles/models-piece-type_files/figure-html/bricks_2-1.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
|
After Width: | Height: | Size: 16 KiB |
BIN
docs/articles/models-piece-type_files/figure-html/bricks_5-1.png
Normal file
|
After Width: | Height: | Size: 27 KiB |
BIN
docs/articles/models-piece-type_files/figure-html/bricks_6-1.png
Normal file
|
After Width: | Height: | Size: 49 KiB |
@@ -39,7 +39,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -71,7 +71,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -78,7 +78,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -110,7 +110,7 @@
|
||||
<a href="articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -74,7 +74,7 @@
|
||||
<a href="articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="articles/mosaics.html">Mosaics with brickr</a>
|
||||
@@ -119,14 +119,12 @@
|
||||
<h2 class="hasAnchor">
|
||||
<a href="#overview" class="anchor"></a>Overview</h2>
|
||||
<p><strong>brickr</strong> is a package for bringing the LEGO® experience into the R and <a href="https://www.tidyverse.org/">tidyverse</a> ecosystem.</p>
|
||||
<p>The package is divided into 3 separate systems:</p>
|
||||
<p>The package is divided into 2 systems:</p>
|
||||
<ul>
|
||||
<li>
|
||||
<a href="#mosaics"><strong>Mosaics</strong></a>: Convert image files into mosaics that could be built using LEGO® bricks.</li>
|
||||
<li>
|
||||
<a href="#3d-models"><strong>3D Models</strong></a>: Build 3D LEGO® models from data tables using <a href="https://cran.r-project.org/web/packages/rgl/index.html">rgl</a>.</li>
|
||||
<li>
|
||||
<a href="#charts"><strong>Charts</strong></a>: COMING SOON: A <a href="https://ggplot2.tidyverse.org/">ggplot2</a> extension to generate plots that resemble LEGO® bricks.</li>
|
||||
</ul>
|
||||
<p>brickr also includes tools help users create the Mosaics and 3D model output using real LEGO® elements.</p>
|
||||
<p>Check out <a href="http://brickr.org">brickr.org</a> for more detail!</p>
|
||||
@@ -137,7 +135,7 @@
|
||||
<ul>
|
||||
<li>Enhancing a real world building experience with mosaics, generated instructions, and piece counts.</li>
|
||||
<li>Generating interest in R and coding for new audiences with easy-to-create 3D models.</li>
|
||||
<li>or just embracing pure novelty.</li>
|
||||
<li>Embracing pure novelty.</li>
|
||||
</ul>
|
||||
<p><em>brickr is developed under the <a href="https://www.lego.com/en-us/legal/notices-and-policies/fair-play/">Fair Play</a> policy using publicly available information about LEGO® products. brickr is not affiliated with The LEGO Group.</em></p>
|
||||
</div>
|
||||
@@ -146,11 +144,8 @@
|
||||
<h2 class="hasAnchor">
|
||||
<a href="#installation" class="anchor"></a>Installation</h2>
|
||||
<div class="sourceCode" id="cb1"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb1-1" title="1"><span class="co"># To install the latest version from Github:</span></a>
|
||||
<a class="sourceLine" id="cb1-2" title="2"><span class="co"># install.packages("devtools")</span></a>
|
||||
<a class="sourceLine" id="cb1-3" title="3">devtools<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/devtools/man/remote-reexports.html">install_github</a></span>(<span class="st">"ryantimpe/brickr"</span>)</a>
|
||||
<a class="sourceLine" id="cb1-4" title="4"></a>
|
||||
<a class="sourceLine" id="cb1-5" title="5"><span class="co">#For 3D features, rayshader is also required.</span></a>
|
||||
<a class="sourceLine" id="cb1-6" title="6"><span class="kw"><a href="https://rdrr.io/r/utils/install.packages.html">install.packages</a></span>(<span class="st">"rayshader"</span>)</a></code></pre></div>
|
||||
<a class="sourceLine" id="cb1-2" title="2"><span class="co"># install.packages("remotes")</span></a>
|
||||
<a class="sourceLine" id="cb1-3" title="3">remotes<span class="op">::</span><span class="kw"><a href="https://rdrr.io/pkg/remotes/man/install_github.html">install_github</a></span>(<span class="st">"ryantimpe/brickr"</span>)</a></code></pre></div>
|
||||
</div>
|
||||
<div id="mosaics" class="section level2">
|
||||
<h2 class="hasAnchor">
|
||||
@@ -183,10 +178,10 @@
|
||||
<p>The <code>bricks_from_*</code> series of functions creates 3D models of LEGO bricks from a variety of input formats.</p>
|
||||
<ul>
|
||||
<li><p><code><a href="reference/bricks_from_table.html">bricks_from_table()</a></code> & <code><a href="reference/bricks_from_excel.html">bricks_from_excel()</a></code> convert a matrix-shaped table of integers into LEGO bricks. For simple models, this table can be made manually using <code><a href="https://rdrr.io/r/base/data.frame.html">data.frame()</a></code> or <code><a href="https://tibble.tidyverse.org/reference/tribble.html">tibble::tribble()</a></code>. For more advanced models, it’s recommended you use MS Excel or a .csv file. The left-most column in the table is associated with the Level or z-axis of the model. <code><a href="reference/bricks_from_excel.html">bricks_from_excel()</a></code> is a wrapper function to more easily build models designed using a Microsoft Excel template. Please see this repo: <a href="https://github.com/ryantimpe/brickr_toybox">brickr toybox</a>.</p></li>
|
||||
<li><p><code><a href="reference/bricks_from_coords.html">bricks_from_coords()</a></code> takes a data frame with <code>x</code>, <code>y</code>, & <code>z</code> integer values, and <code>Color</code> columns, where each combination of x, y, & z is a point in 3-dimensional space. Color must be an official LEGO color name from <code><a href="reference/build_colors.html">build_colors()</a></code>. This format is much more flexible than <code><a href="reference/bricks_from_table.html">bricks_from_table()</a></code> and allows the programmatic development of 3D models.</p></li>
|
||||
<li><p><code><a href="reference/bricks_from_mosaic.html">bricks_from_mosaic()</a></code> converts a 2D <a href="#mosaics">mosaic</a> object from an image into 3D LEGO models, respectively. <code>bricks_from_rayshader()</code> creates a LEGO model from the same input as <code><a href="https://rdrr.io/pkg/rayshader/man/plot_3d.html">rayshader::plot_3d()</a></code>.</p></li>
|
||||
<li><p><code><a href="reference/bricks_from_coords.html">bricks_from_coords()</a></code> takes a data frame with <code>x</code>, <code>y</code>, & <code>z</code> integer values, and <code>Color</code> columns, where each combination of x, y, & z is a point in 3-dimensional space. Color must be an official LEGO color name from <code><a href="reference/build_colors.html">build_colors()</a></code>. This format is much more flexible than <code><a href="reference/bricks_from_table.html">bricks_from_table()</a></code> and allows the programmatic development of 3D models. For other options, see the “Piece type in 3D Models” vignette.</p></li>
|
||||
<li><p><code><a href="reference/bricks_from_mosaic.html">bricks_from_mosaic()</a></code> converts a 2D <a href="#mosaics">mosaic</a> object from an image into 3D LEGO models, respectively.</p></li>
|
||||
</ul>
|
||||
<p>Pass the output from any <code>bricks_from_*()</code> function to <code><a href="reference/build_bricks.html">build_bricks()</a></code> to see the 3D model. Models are currently rendered in <strong>rgl</strong>. Previous versions of brickr use <a href="https://twitter.com/tylermorganwall">Tyler Morgan-Wall</a>’s <a href="https://www.rayshader.com/">rayshader</a> package. This option is still available by passing the output from any <code>bricks_from_*()</code> function to <code>build_bricks_rayshader()</code>. Rayshader can still be used for saving snapshots and creating animations.</p>
|
||||
<p>Pass the output from any <code>bricks_from_*()</code> function to <code><a href="reference/build_bricks.html">build_bricks()</a></code> to see the 3D model. Models are rendered in <strong>rgl</strong>.</p>
|
||||
<div class="sourceCode" id="cb3"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb3-1" title="1"><span class="kw"><a href="https://rdrr.io/r/base/library.html">library</a></span>(brickr)</a>
|
||||
<a class="sourceLine" id="cb3-2" title="2"></a>
|
||||
<a class="sourceLine" id="cb3-3" title="3"><span class="co">#This is a brick</span></a>
|
||||
@@ -281,10 +276,7 @@
|
||||
<p>More examples using <code><a href="reference/bricks_from_table.html">bricks_from_table()</a></code> and <code><a href="reference/bricks_from_coords.html">bricks_from_coords()</a></code> can be found at the links below.</p>
|
||||
<ul>
|
||||
<li>
|
||||
<a href="https://gist.github.com/ryantimpe/a784beaa4f798f57010369329d46ce71"><strong>Get started</strong></a> with the framework for building a brick from scratch.</li>
|
||||
<li>
|
||||
<a href="https://gist.github.com/ryantimpe/ceab2ed6b8a4737077280fc9b0d1c886"><strong>Build an owl</strong></a> with <code><a href="reference/bricks_from_table.html">bricks_from_table()</a></code> by manually placing each brick.</li>
|
||||
<li>Generate a punny <a href="https://gist.github.com/ryantimpe/a7363a5e99dceabada150a43925beec7"><strong>random forest model</strong></a> using <code><a href="reference/bricks_from_coords.html">bricks_from_coords()</a></code> and {purrr}.</li>
|
||||
<a href="https://gist.github.com/ryantimpe/3893fdd0f94138d027bae35bf38b57c7"><strong>Baby Yoda</strong></a> example using <code><a href="reference/bricks_from_excel.html">bricks_from_excel()</a></code> with an animation.</li>
|
||||
<li>
|
||||
<a href="https://github.com/ryantimpe/brickr_toybox"><strong>brickr toybox</strong></a> repo for tools and resources to get started.</li>
|
||||
</ul>
|
||||
@@ -309,6 +301,12 @@
|
||||
<p><img src="README_files/figure-gfm/m1_pieces-1.png"><!-- --></p>
|
||||
</div>
|
||||
</div>
|
||||
<div id="acknowledgements" class="section level2">
|
||||
<h2 class="hasAnchor">
|
||||
<a href="#acknowledgements" class="anchor"></a>Acknowledgements</h2>
|
||||
<p>3D models in brickr would not exist without <a href="https://twitter.com/tylermorganwall">Tyler Morgan-Wall</a> and his <a href="https://www.rayshader.com/">rayshader</a> package. If you’re interested in creating any time of 3D models in R, check out his <a href="https://www.rayrender.net/">rayrender</a> package.</p>
|
||||
<p>All functions in brickr are created with the <a href="https://www.tidyverse.org/">tidyverse</a> and <a href="https://cran.r-project.org/web/packages/rgl/index.html">rgl</a>.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -78,7 +78,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -110,7 +110,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
@@ -147,7 +147,7 @@
|
||||
|
||||
<div id="brickr-020---aka-castle" class="section level1">
|
||||
<h1 class="page-header">
|
||||
<a href="#brickr-020---aka-castle" class="anchor"></a>brickr 0.2.0 - a.k.a. <a href="">Castle</a>
|
||||
<a href="#brickr-020---aka-castle" class="anchor"></a>brickr 0.2.0 - a.k.a. <a href="https://twitter.com/ryantimpe/status/1191354410124709892">Castle</a>
|
||||
</h1>
|
||||
<ul>
|
||||
<li>Lots of bug fixes. More to come.</li>
|
||||
|
||||
@@ -5,7 +5,7 @@ articles:
|
||||
models-from-other: models-from-other.html
|
||||
models-from-program: models-from-program.html
|
||||
models-from-tables: models-from-tables.html
|
||||
models-pieces-type: models-pieces-type.html
|
||||
models-piece-type: models-piece-type.html
|
||||
mosaics: mosaics.html
|
||||
urls:
|
||||
reference: http://brickr.org/reference
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -78,7 +78,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -110,7 +110,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
@@ -210,104 +210,6 @@
|
||||
</td>
|
||||
<td><p>Build 3D brick model with rgl</p></td>
|
||||
</tr>
|
||||
</tbody><tbody>
|
||||
<tr>
|
||||
<th colspan="2">
|
||||
<h2 id="section-ggplot-extension" class="hasAnchor"><a href="#section-ggplot-extension" class="anchor"></a>ggplot Extension</h2>
|
||||
<p class="section-desc"><p>Brick bar charts in ggplot</p></p>
|
||||
</th>
|
||||
</tr>
|
||||
<tr>
|
||||
|
||||
<td>
|
||||
<p><code><a href="brickr-ggproto.html">GeomBrick</a></code> </p>
|
||||
</td>
|
||||
<td><p>GeomBrick</p></td>
|
||||
</tr><tr>
|
||||
|
||||
<td>
|
||||
<p><code><a href="brickr.html">brickr</a></code> </p>
|
||||
</td>
|
||||
<td><p><code>brickr</code> package</p></td>
|
||||
</tr><tr>
|
||||
|
||||
<td>
|
||||
<p><code><a href="bricks_from_coords.html">bricks_from_coords()</a></code> </p>
|
||||
</td>
|
||||
<td><p>Convert a data frame with x, y, z & Color columns into a brickr 3D object</p></td>
|
||||
</tr><tr>
|
||||
|
||||
<td>
|
||||
<p><code><a href="bricks_from_excel.html">bricks_from_excel()</a></code> </p>
|
||||
</td>
|
||||
<td><p>Convert an Excel brickr template into a brickr 3D object</p></td>
|
||||
</tr><tr>
|
||||
|
||||
<td>
|
||||
<p><code><a href="bricks_from_mosaic.html">bricks_from_mosaic()</a></code> </p>
|
||||
</td>
|
||||
<td><p>Convert a 2D LEGO mosaic into a brickr 3D object</p></td>
|
||||
</tr><tr>
|
||||
|
||||
<td>
|
||||
<p><code><a href="bricks_from_table.html">bricks_from_table()</a></code> </p>
|
||||
</td>
|
||||
<td><p>Convert a matrix table into a brickr 3D object</p></td>
|
||||
</tr><tr>
|
||||
|
||||
<td>
|
||||
<p><code><a href="build_bricks.html">build_bricks()</a></code> </p>
|
||||
</td>
|
||||
<td><p>Build 3D brick model with rgl</p></td>
|
||||
</tr><tr>
|
||||
|
||||
<td>
|
||||
<p><code><a href="build_colors.html">build_colors()</a></code> </p>
|
||||
</td>
|
||||
<td><p>Display available brick colors</p></td>
|
||||
</tr><tr>
|
||||
|
||||
<td>
|
||||
<p><code><a href="build_instructions.html">build_instructions()</a></code> </p>
|
||||
</td>
|
||||
<td><p>Create instruction manual for 2D image mosaics</p></td>
|
||||
</tr><tr>
|
||||
|
||||
<td>
|
||||
<p><code><a href="build_mosaic.html">build_mosaic()</a></code> </p>
|
||||
</td>
|
||||
<td><p>Display 2D LEGO mosaic as a plot image</p></td>
|
||||
</tr><tr>
|
||||
|
||||
<td>
|
||||
<p><code><a href="build_pieces.html">build_pieces()</a></code> </p>
|
||||
</td>
|
||||
<td><p>Display bricks required to build model or mosaic.</p></td>
|
||||
</tr><tr>
|
||||
|
||||
<td>
|
||||
<p><code><a href="build_pieces_table.html">build_pieces_table()</a></code> </p>
|
||||
</td>
|
||||
<td><p>Generate required bricks as a data frame.</p></td>
|
||||
</tr><tr>
|
||||
|
||||
<td>
|
||||
<p><code><a href="geom_brick_rect.html">geom_brick_rect()</a></code> </p>
|
||||
</td>
|
||||
<td><p>Tile charts as Bricks - ggplot2 extension</p></td>
|
||||
</tr><tr>
|
||||
|
||||
<td>
|
||||
<p><code><a href="image_to_mosaic.html">image_to_mosaic()</a></code> </p>
|
||||
</td>
|
||||
<td><p>Create a 2D LEGO mosaic from an image array</p></td>
|
||||
</tr><tr>
|
||||
|
||||
<td>
|
||||
<p><code><a href="lego_colors.html">lego_colors</a></code> </p>
|
||||
</td>
|
||||
<td><p>Brickr colors avaiable for mosaics & 3D models</p></td>
|
||||
</tr>
|
||||
</tbody><tbody>
|
||||
<tr>
|
||||
<th colspan="2">
|
||||
@@ -349,7 +251,6 @@
|
||||
<ul class="nav nav-pills nav-stacked">
|
||||
<li><a href="#section-mosaics">Mosaics</a></li>
|
||||
<li><a href="#section--d-models">3D Models</a></li>
|
||||
<li><a href="#section-ggplot-extension">ggplot Extension</a></li>
|
||||
<li><a href="#section-bricks-irl">Bricks IRL</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
</button>
|
||||
<span class="navbar-brand">
|
||||
<a class="navbar-link" href="../index.html">brickr</a>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9215</span>
|
||||
<span class="version label label-default" data-toggle="tooltip" data-placement="bottom" title="Released version">0.2.9.9300</span>
|
||||
</span>
|
||||
</div>
|
||||
|
||||
@@ -111,7 +111,7 @@
|
||||
<a href="../articles/models-from-tables.html">3D models from tables</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/models-pieces-type.html">UNKNOWN TITLE</a>
|
||||
<a href="../articles/models-piece-type.html">Piece type in 3D Models</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="../articles/mosaics.html">Mosaics with brickr</a>
|
||||
|
||||
@@ -70,7 +70,7 @@
|
||||
<loc>http://brickr.org/articles/models-from-tables.html</loc>
|
||||
</url>
|
||||
<url>
|
||||
<loc>http://brickr.org/articles/models-pieces-type.html</loc>
|
||||
<loc>http://brickr.org/articles/models-piece-type.html</loc>
|
||||
</url>
|
||||
<url>
|
||||
<loc>http://brickr.org/articles/mosaics.html</loc>
|
||||
|
||||