{"id":1164,"date":"2022-01-31T23:32:20","date_gmt":"2022-01-31T21:32:20","guid":{"rendered":"https:\/\/reyn.vlietstra.co.za\/?page_id=1164"},"modified":"2025-03-23T13:33:40","modified_gmt":"2025-03-23T11:33:40","slug":"cv-new","status":"publish","type":"page","link":"https:\/\/reyn.vlietstra.co.za\/cv","title":{"rendered":"CV"},"content":{"rendered":"\n<div class=\"wp-block-group alignfull is-layout-flow wp-container-80\" style=\"padding-top:50px;padding-right:50px;padding-bottom:50px;padding-left:50px\">\n<p>Hi!<br>My name is Reyn. What follows is some of what I\u2019ve done for employers and myself since I&#8217;ve started keeping record. (+- 2015)<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-background-color has-css-opacity has-background-background-color has-background is-style-wide\"\/>\n\n\n<div class=\"wp-block-ub-tabbed-content wp-block-ub-tabbed-content-holder alignwide wp-block-ub-tabbed-content-horizontal-holder-mobile wp-block-ub-tabbed-content-horizontal-holder-tablet\" id=\"ub-tabbed-content-f8f63c80-09f5-4d8f-980b-f750fbf93b1e\">\n                <div class=\"wp-block-ub-tabbed-content-tab-holder horizontal-tab-width-mobile horizontal-tab-width-tablet\">\n                    <div role=\"tablist\" class=\"wp-block-ub-tabbed-content-tabs-title wp-block-ub-tabbed-content-tabs-title-mobile-horizontal-tab wp-block-ub-tabbed-content-tabs-title-tablet-horizontal-tab\"><div role=\"tab\" id=\"ub-tabbed-content-f8f63c80-09f5-4d8f-980b-f750fbf93b1e-tab-0\" aria-controls=\"ub-tabbed-content-f8f63c80-09f5-4d8f-980b-f750fbf93b1e-panel-0\"\n            aria-selected=\"true\" class = \"wp-block-ub-tabbed-content-tab-title-wrap active\" tabindex=\"-1\">\n            <div class=\"wp-block-ub-tabbed-content-tab-title\">NDT<\/div><\/div><div role=\"tab\" id=\"ub-tabbed-content-f8f63c80-09f5-4d8f-980b-f750fbf93b1e-tab-1\" aria-controls=\"ub-tabbed-content-f8f63c80-09f5-4d8f-980b-f750fbf93b1e-panel-1\"\n            aria-selected=\"false\" class = \"wp-block-ub-tabbed-content-tab-title-wrap\" tabindex=\"-1\">\n            <div class=\"wp-block-ub-tabbed-content-tab-title\">Toll System<\/div><\/div><div role=\"tab\" id=\"ub-tabbed-content-f8f63c80-09f5-4d8f-980b-f750fbf93b1e-tab-2\" aria-controls=\"ub-tabbed-content-f8f63c80-09f5-4d8f-980b-f750fbf93b1e-panel-2\"\n            aria-selected=\"false\" class = \"wp-block-ub-tabbed-content-tab-title-wrap\" tabindex=\"-1\">\n            <div class=\"wp-block-ub-tabbed-content-tab-title\">Unity<\/div><\/div><div role=\"tab\" id=\"ub-tabbed-content-f8f63c80-09f5-4d8f-980b-f750fbf93b1e-tab-3\" aria-controls=\"ub-tabbed-content-f8f63c80-09f5-4d8f-980b-f750fbf93b1e-panel-3\"\n            aria-selected=\"false\" class = \"wp-block-ub-tabbed-content-tab-title-wrap\" tabindex=\"-1\">\n            <div class=\"wp-block-ub-tabbed-content-tab-title\">Other<\/div><\/div><\/div><\/div>\n                <div class=\"wp-block-ub-tabbed-content-tabs-content\"><div role=\"tabpanel\" class=\"wp-block-ub-tabbed-content-tab-content-wrap active\"\n        id=\"ub-tabbed-content-f8f63c80-09f5-4d8f-980b-f750fbf93b1e-panel-0\" aria-labelledby=\"ub-tabbed-content-f8f63c80-09f5-4d8f-980b-f750fbf93b1e-tab-0\" tabindex=\"0\">\n\n<figure class=\"wp-block-image aligncenter size-full is-resized is-style-default\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/scmlogo_small.png\"><img decoding=\"async\" loading=\"lazy\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/scmlogo_small.png\" alt=\"\" class=\"wp-image-1046\" width=\"453\" height=\"118\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/scmlogo_small.png 446w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/scmlogo_small-300x78.png 300w\" sizes=\"(max-width: 453px) 100vw, 453px\" \/><\/a><\/figure>\n\n\n\n<p>SCM is an engineering firm specializing in <strong>non destructive testing<\/strong> (NDT). We are 3 people, one electronic engineer, me the software developer and a specialist technicians.<\/p>\n\n\n\n<p>Here are some of the projects I&#8217;ve been involved in at SCM.<\/p>\n\n\n\n<div class=\"wp-block-group has-border-color has-cyan-bluish-gray-border-color is-layout-flow\" style=\"border-style:solid;border-width:1px;padding-top:5px;padding-right:5px;padding-bottom:5px;padding-left:5px\">\n<p class=\"has-text-align-center has-luminous-vivid-amber-background-color has-background has-small-font-size\" style=\"font-style:normal;font-weight:500;line-height:0\">Psi \u2013 Ultrasound Scanner<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-flow\">\n<div class=\"wp-block-columns is-layout-flex wp-container-3\">\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Psi32 Configuration Options\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/Tr6NVSTw9H0?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<p>This is an ultrasound scanner for industrial purposes.<\/p>\n\n\n\n<p><br>My employer came up with a novel algorithm to process ultrasound data. I helped him implement it and later improved the processing speed by using OpenGL and OpenCL.<\/p>\n\n\n\n<p>I then proposed and built an android version<\/p>\n\n\n\n<p><strong>Android, Xamarin, C#, C++, OpenGL, OpenCL<\/strong><\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-group has-border-color has-cyan-bluish-gray-border-color is-layout-flow\" style=\"border-style:solid;border-width:1px;padding-top:5px;padding-right:5px;padding-bottom:5px;padding-left:5px\">\n<p class=\"has-text-align-center has-luminous-vivid-amber-background-color has-background has-small-font-size\" style=\"font-style:normal;font-weight:500;line-height:0\">Tank Scanner<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-flow\">\n<div class=\"wp-block-columns is-layout-flex wp-container-8\">\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-4-3 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Tank Scanner\" width=\"500\" height=\"375\" src=\"https:\/\/www.youtube.com\/embed\/3rZUeZwgnSs?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<p>This was an attempt to build an autonomous scanner for petrochemical tanks.<br><strong>C# \/ WPF<\/strong> \/ <strong>ROS \/ <strong>C++ \/ Linux<\/strong> \/ Python<\/strong><\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-group has-border-color has-cyan-bluish-gray-border-color is-layout-flow\" style=\"border-style:solid;border-width:1px;padding-top:5px;padding-right:5px;padding-bottom:5px;padding-left:5px\">\n<p class=\"has-text-align-center has-luminous-vivid-amber-background-color has-background has-small-font-size\" style=\"font-style:normal;font-weight:500;line-height:0\">Scan Bed<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-flow\">\n<div class=\"wp-block-columns is-layout-flex wp-container-13\">\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/scanbed.jpg\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"768\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/scanbed-1024x768.jpg\" alt=\"\" class=\"wp-image-1223\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/scanbed-1024x768.jpg 1024w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/scanbed-300x225.jpg 300w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/scanbed-768x576.jpg 768w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/scanbed-1536x1152.jpg 1536w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/scanbed.jpg 1667w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<p>We built a scan bed that is placed in a water bath. <\/p>\n\n\n\n<p>The scan head is an ultrasound device.  <\/p>\n\n\n\n<p>Cameras allow the user to select parts on the bed, a scan path is then calculated and converted to gcode which is sent to a device that runs grbl which then controls stepper motors. <\/p>\n\n\n\n<p><strong>WPF \/ C# \/ Grbl \/ OpenCV<\/strong><\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-group has-border-color has-cyan-bluish-gray-border-color is-layout-flow\" style=\"border-style:solid;border-width:1px;padding-top:5px;padding-right:5px;padding-bottom:5px;padding-left:5px\">\n<p class=\"has-text-align-center has-luminous-vivid-amber-background-color has-background has-small-font-size\" style=\"font-style:normal;font-weight:500;line-height:0\">Shell Scanner<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-flow\">\n<div class=\"wp-block-columns is-layout-flex wp-container-18\">\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/shell-scanner.jpg\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"576\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/shell-scanner-1024x576.jpg\" alt=\"\" class=\"wp-image-1226\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/shell-scanner-1024x576.jpg 1024w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/shell-scanner-300x169.jpg 300w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/shell-scanner-768x432.jpg 768w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/shell-scanner-1536x864.jpg 1536w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/shell-scanner-2048x1152.jpg 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<p>This is a machine that scans projectile shells. The operator loads shells on the one side and removes them on the other. Each shell is scanned by an ultrasound device that is moved by an<strong> ABB robot arm<\/strong>.<\/p>\n\n\n\n<p>My involvement was some basic setup on the robot arm and <strong>reverse engineering a usb protocol<\/strong> between an ultrasound device and the manufacturer&#8217;s software, after which I built an API for our own use.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-group has-border-color has-cyan-bluish-gray-border-color is-layout-flow\" style=\"border-style:solid;border-width:1px;padding-top:5px;padding-right:5px;padding-bottom:5px;padding-left:5px\">\n<p class=\"has-text-align-center has-luminous-vivid-amber-background-color has-background has-small-font-size\" style=\"font-style:normal;font-weight:500;line-height:0\">Some other projects at SCM<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-flow\"><\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-23 is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"987\" height=\"643\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/simulator.jpg\" alt=\"\" class=\"wp-image-1229\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/simulator.jpg 987w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/simulator-300x195.jpg 300w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/simulator-768x500.jpg 768w\" sizes=\"(max-width: 987px) 100vw, 987px\" \/><figcaption class=\"wp-element-caption\">Sound Distance<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"1919\" height=\"1093\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2016\/11\/editor-1.png\" alt=\"\" class=\"wp-image-605\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2016\/11\/editor-1.png 1919w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2016\/11\/editor-1-300x171.png 300w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2016\/11\/editor-1-768x437.png 768w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2016\/11\/editor-1-1024x583.png 1024w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2016\/11\/editor-1-1440x820.png 1440w\" sizes=\"(max-width: 1919px) 100vw, 1919px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"1052\" height=\"866\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2016\/10\/saddle.png\" alt=\"\" class=\"wp-image-585\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2016\/10\/saddle.png 1052w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2016\/10\/saddle-300x247.png 300w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2016\/10\/saddle-768x632.png 768w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2016\/10\/saddle-1024x843.png 1024w\" sizes=\"(max-width: 1052px) 100vw, 1052px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"1403\" height=\"611\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2016\/10\/wheel.png\" alt=\"\" class=\"wp-image-553\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2016\/10\/wheel.png 1403w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2016\/10\/wheel-300x131.png 300w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2016\/10\/wheel-768x334.png 768w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2016\/10\/wheel-1024x446.png 1024w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2016\/10\/wheel-1200x523.png 1200w\" sizes=\"(max-width: 1403px) 100vw, 1403px\" \/><figcaption class=\"wp-element-caption\">Train Wheel<\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"1560\" height=\"233\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/magnetometers.png\" alt=\"\" class=\"wp-image-1021\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/magnetometers.png 1560w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/magnetometers-300x45.png 300w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/magnetometers-1024x153.png 1024w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/magnetometers-768x115.png 768w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/magnetometers-1536x229.png 1536w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/magnetometers-941x141.png 941w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/magnetometers-1339x200.png 1339w\" sizes=\"(max-width: 1560px) 100vw, 1560px\" \/><\/figure>\n<\/figure>\n\n<\/div><div role=\"tabpanel\" class=\"wp-block-ub-tabbed-content-tab-content-wrap ub-hide\"\n        id=\"ub-tabbed-content-f8f63c80-09f5-4d8f-980b-f750fbf93b1e-panel-1\" aria-labelledby=\"ub-tabbed-content-f8f63c80-09f5-4d8f-980b-f750fbf93b1e-tab-1\" tabindex=\"0\">\n\n<figure class=\"wp-block-image aligncenter size-full\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/intertoll.png\"><img decoding=\"async\" loading=\"lazy\" width=\"600\" height=\"75\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/intertoll.png\" alt=\"\" class=\"wp-image-1117\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/intertoll.png 600w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/intertoll-300x38.png 300w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/a><\/figure>\n\n\n\n<p>Intertoll was a subsidiary of Group 5, they are now called Instatoll. People who were involved in the project include a project manager, a documenter, a tester and 3 software developers. I was responsible for the following.<\/p>\n\n\n\n<div class=\"wp-block-group has-border-color has-cyan-bluish-gray-border-color is-layout-flow\" style=\"border-style:solid;border-width:1px;padding-top:5px;padding-right:5px;padding-bottom:5px;padding-left:5px\">\n<p class=\"has-text-align-center has-luminous-vivid-amber-background-color has-background has-small-font-size\" style=\"font-style:normal;font-weight:500;line-height:0\">Toll Lane Computer<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-flow\">\n<div class=\"wp-block-columns is-layout-flex wp-container-27\">\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-4-3 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Zimbabwe Toll Plaza Opening on ZBC\" width=\"500\" height=\"375\" src=\"https:\/\/www.youtube.com\/embed\/hFKTSVZ4UrM?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen><\/iframe>\n<\/div><figcaption class=\"wp-element-caption\">Some bad footage of a toll plaza opening with our system.<\/figcaption><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<p>There are between 2 and 6 toll lane computers (TLCs) per toll plaza. They are touch screen computers running <strong>windows<\/strong>. The application is written in <strong>WPF, C#<\/strong> and has a local <strong>Microsoft SQL<\/strong> database.<\/p>\n\n\n\n<p>The TLC controls a boom, traffic light and overhead lane sign via a RS485 interface. It also has a printer, user fare display and swipe card reader.<\/p>\n\n\n\n<p>The TLC gets inputs from an automatic vehicle classification system (discussed later) and an electronic tag reader.<\/p>\n\n\n\n<p>The TLC sends <strong>MSMQ<\/strong> messages to the plaza computer (discussed later).<\/p>\n\n\n\n<p>I was the sole developer on the TLC.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-group has-border-color has-cyan-bluish-gray-border-color is-layout-flow\" style=\"border-style:solid;border-width:1px;padding-top:5px;padding-right:5px;padding-bottom:5px;padding-left:5px\">\n<p class=\"has-text-align-center has-luminous-vivid-amber-background-color has-background has-small-font-size\" style=\"font-style:normal;font-weight:500;line-height:0\">Automatic Vehicle Classification<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-flow\">\n<div class=\"wp-block-columns is-layout-flex wp-container-32\">\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Kinect Wheel Detection\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/gdp4_z7hmfA?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen><\/iframe>\n<\/div><figcaption class=\"wp-element-caption\">Prototype wheel counter using the Microsoft Kinect I built in my own time<\/figcaption><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<p>The automatic vehicle classifier (AVC) uses a profile scanner, magnetometers and treadles in the road to collect data.<\/p>\n\n\n\n<p>Vehicles are classified in 4 different classes based on the height above first axle and number of wide and normal wheels counted.<\/p>\n\n\n\n<p>I had the opportunity to implement the second version of the AVC.<\/p>\n\n\n\n<p>Later the data collected and verified by people was used to train a model to improve the classification.<\/p>\n\n\n\n<p><strong>C# \/ WPF \/ WCF<\/strong><\/p>\n\n\n\n<p>I proposed, designed and implemented a camera based wheel counter using<strong> C++<\/strong>, which made use of the Microsoft Kinect.<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-group has-border-color has-cyan-bluish-gray-border-color is-layout-flow\" style=\"border-style:solid;border-width:1px;padding-top:5px;padding-right:5px;padding-bottom:5px;padding-left:5px\">\n<p class=\"has-text-align-center has-luminous-vivid-amber-background-color has-background has-small-font-size\" style=\"font-style:normal;font-weight:500;line-height:0\">Toll Plaza Computer<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-flow\">\n<div class=\"wp-block-columns is-layout-flex wp-container-37\">\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toll_interface.png\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"522\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toll_interface-1024x522.png\" alt=\"\" class=\"wp-image-978\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toll_interface-1024x522.png 1024w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toll_interface-300x153.png 300w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toll_interface-768x391.png 768w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toll_interface-1536x782.png 1536w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toll_interface-393x200.png 393w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toll_interface.png 1920w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<p>I designed and implemented the plaza management system. The PCS is used to verify and correct AVC classifications, cash declarations, accounting and reporting.<\/p>\n\n\n\n<p><strong>C# \/ ASP.NET MVC \/ SQL Server Reporting Services \/ KnockoutJS<\/strong><\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n<\/div><div role=\"tabpanel\" class=\"wp-block-ub-tabbed-content-tab-content-wrap ub-hide\"\n        id=\"ub-tabbed-content-f8f63c80-09f5-4d8f-980b-f750fbf93b1e-panel-2\" aria-labelledby=\"ub-tabbed-content-f8f63c80-09f5-4d8f-980b-f750fbf93b1e-tab-2\" tabindex=\"0\">\n\n<div class=\"wp-block-group has-border-color has-cyan-bluish-gray-border-color is-layout-flow\" style=\"border-style:solid;border-width:1px;padding-top:5px;padding-right:5px;padding-bottom:5px;padding-left:5px\">\n<p class=\"has-text-align-center has-luminous-vivid-amber-background-color has-background has-small-font-size\" style=\"font-style:normal;font-weight:500;line-height:0\">Fluent Dialogue<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-flow\">\n<div class=\"wp-block-columns is-layout-flex wp-container-42\">\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image aligncenter size-full is-resized\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2015\/01\/FluentLogo.png\"><img decoding=\"async\" loading=\"lazy\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2015\/01\/FluentLogo.png\" alt=\"\" class=\"wp-image-665\" width=\"376\" height=\"247\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2015\/01\/FluentLogo.png 842w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2015\/01\/FluentLogo-300x197.png 300w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2015\/01\/FluentLogo-768x505.png 768w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2015\/01\/FluentLogo-304x200.png 304w\" sizes=\"(max-width: 376px) 100vw, 376px\" \/><\/a><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<p>Fluent Dialogue is a dialogue conversation framework for unity. Conversations are defined using a fluent api in code.<br><\/p>\n\n\n\n<p>The asset is available for free on the unity asset store: <a href=\"https:\/\/assetstore.unity.com\/packages\/tools\/gui\/fluent-dialogue-30069#reviews\">Fluent Dialogue | GUI Tools | Unity Asset Store<\/a><\/p>\n\n\n\n<p>You can have a look at the WebGL tutorial: <a href=\"https:\/\/reyn.vlietstra.co.za\/?page_id=248\">Fluent Dialogue \u2013 Reyn (vlietstra.co.za)<\/a> <\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-group has-border-color has-cyan-bluish-gray-border-color is-layout-flow\" style=\"border-style:solid;border-width:1px;padding-top:5px;padding-right:5px;padding-bottom:5px;padding-left:5px\">\n<p class=\"has-text-align-center has-luminous-vivid-amber-background-color has-background has-small-font-size\" style=\"font-style:normal;font-weight:500;line-height:0\">Toddler Trainer<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-flow\">\n<div class=\"wp-block-columns is-layout-flex wp-container-47\">\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toddler-trainer.png\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"637\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toddler-trainer-1024x637.png\" alt=\"\" class=\"wp-image-1036\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toddler-trainer-1024x637.png 1024w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toddler-trainer-300x187.png 300w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toddler-trainer-768x478.png 768w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toddler-trainer-321x200.png 321w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toddler-trainer.png 1199w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<p>This was a prototype game I built. You can play a WebGL based version here: <a href=\"https:\/\/reyn.vlietstra.co.za\/uploads\/ttt\/single\">https:\/\/reyn.vlietstra.co.za\/uploads\/ttt\/single<\/a><\/p>\n\n\n\n<p>w\/a\/s\/d + e<\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-group has-border-color has-cyan-bluish-gray-border-color is-layout-flow\" style=\"border-style:solid;border-width:1px;padding-top:5px;padding-right:5px;padding-bottom:5px;padding-left:5px\">\n<p class=\"has-text-align-center has-luminous-vivid-amber-background-color has-background has-small-font-size\" style=\"font-style:normal;font-weight:500;line-height:0\">iLLu<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-flow\">\n<p>iLLu was an attempt to build an animated coloring app. Unfortunately I have since removed the app from the store.<\/p>\n\n\n\n<p><strong>Unity, C#, OpenGL, ASP.net, MSSQL, Android, iOS<\/strong>, <strong>Azure<\/strong>.<\/p>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-54\">\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-4-3 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"iLLu - Painting a blimp\" width=\"500\" height=\"375\" src=\"https:\/\/www.youtube.com\/embed\/8NoxcD1WCOY?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-4-3 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"iLLu - Coloring Griffin\" width=\"500\" height=\"375\" src=\"https:\/\/www.youtube.com\/embed\/rG1FU9kXqzA?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n<\/div>\n<\/div>\n\n<\/div><div role=\"tabpanel\" class=\"wp-block-ub-tabbed-content-tab-content-wrap ub-hide\"\n        id=\"ub-tabbed-content-f8f63c80-09f5-4d8f-980b-f750fbf93b1e-panel-3\" aria-labelledby=\"ub-tabbed-content-f8f63c80-09f5-4d8f-980b-f750fbf93b1e-tab-3\" tabindex=\"0\">\n\n<div class=\"wp-block-group has-border-color has-cyan-bluish-gray-border-color is-layout-flow\" style=\"border-style:solid;border-width:1px;padding-top:5px;padding-right:5px;padding-bottom:5px;padding-left:5px\">\n<p class=\"has-text-align-center has-luminous-vivid-amber-background-color has-background has-small-font-size\" style=\"font-style:normal;font-weight:500;line-height:0\">Toastmasters Timing Light<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-flow\">\n<p>This is a timing light I built for my toastmasters club.<br>Parts were modeled in&nbsp;<strong>Rhino3D<\/strong> and <strong>3D Printed<\/strong>.&nbsp;<\/p>\n\n\n\n<p><strong>Esp32<\/strong>,&nbsp;<strong>Arduino<\/strong>,&nbsp;<strong>Bluetooth<\/strong>, and the app was built with&nbsp;<strong>Flutter<\/strong>.<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-58\">\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light.png\"><img decoding=\"async\" loading=\"lazy\" width=\"832\" height=\"473\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light.png\" alt=\"\" class=\"wp-image-1027\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light.png 832w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light-300x171.png 300w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light-768x437.png 768w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light-352x200.png 352w\" sizes=\"(max-width: 832px) 100vw, 832px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light-real.png\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"472\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light-real-1024x472.png\" alt=\"\" class=\"wp-image-1032\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light-real-1024x472.png 1024w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light-real-300x138.png 300w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light-real-768x354.png 768w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light-real-434x200.png 434w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light-real.png 1420w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light-real-2.png\"><img decoding=\"async\" loading=\"lazy\" width=\"688\" height=\"1024\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light-real-2-688x1024.png\" alt=\"\" class=\"wp-image-1034\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light-real-2-688x1024.png 688w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light-real-2-202x300.png 202w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light-real-2-134x200.png 134w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/toastmasters-light-real-2.png 700w\" sizes=\"(max-width: 688px) 100vw, 688px\" \/><\/a><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/Toastplanner-App.jpg\"><img decoding=\"async\" loading=\"lazy\" width=\"485\" height=\"1024\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/Toastplanner-App-485x1024.jpg\" alt=\"\" class=\"wp-image-1061\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/Toastplanner-App-485x1024.jpg 485w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/Toastplanner-App-142x300.jpg 142w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/Toastplanner-App-768x1621.jpg 768w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/Toastplanner-App-728x1536.jpg 728w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/Toastplanner-App-970x2048.jpg 970w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/Toastplanner-App-95x200.jpg 95w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/Toastplanner-App.jpg 1080w\" sizes=\"(max-width: 485px) 100vw, 485px\" \/><\/a><\/figure>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-group has-border-color has-cyan-bluish-gray-border-color is-layout-flow\" style=\"border-style:solid;border-width:1px;padding-top:5px;padding-right:5px;padding-bottom:5px;padding-left:5px\">\n<p class=\"has-text-align-center has-luminous-vivid-amber-background-color has-background has-small-font-size\" style=\"font-style:normal;font-weight:500;line-height:0\">Automated Blind<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-flow\">\n<p>This is an automated blind I built for some of my smaller windows. Parts were modeled in&nbsp;<strong>Rhino3D<\/strong>. The Esp32 wakes up every couple of hours, connects to the wifi, checks an NTP server for the exact time and opens or closes the blind. The 2x 18650 last 6 months.<\/p>\n\n\n\n<p><strong>Esp32<\/strong>,&nbsp;<strong>Arduino<\/strong>,&nbsp;<strong>Stepper motor<\/strong><br><\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-63\">\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/blind-render.png\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"526\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/blind-render-1024x526.png\" alt=\"\" class=\"wp-image-1014\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/blind-render-1024x526.png 1024w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/blind-render-300x154.png 300w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/blind-render-768x394.png 768w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/blind-render-389x200.png 389w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/blind-render.png 1069w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/blind-box.jpg\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"768\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/blind-box-1024x768.jpg\" alt=\"\" class=\"wp-image-1260\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/blind-box-1024x768.jpg 1024w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/blind-box-300x225.jpg 300w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/blind-box-768x576.jpg 768w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/blind-box-1536x1152.jpg 1536w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/blind-box.jpg 1667w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/blind-real-2.png\"><img decoding=\"async\" loading=\"lazy\" width=\"668\" height=\"1024\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/blind-real-2-668x1024.png\" alt=\"\" class=\"wp-image-1019\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/blind-real-2-668x1024.png 668w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/blind-real-2-196x300.png 196w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/blind-real-2-130x200.png 130w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/blind-real-2.png 701w\" sizes=\"(max-width: 668px) 100vw, 668px\" \/><\/a><\/figure>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-group has-border-color has-cyan-bluish-gray-border-color is-layout-flow\" style=\"border-style:solid;border-width:1px;padding-top:5px;padding-right:5px;padding-bottom:5px;padding-left:5px\">\n<p class=\"has-text-align-center has-luminous-vivid-amber-background-color has-background has-small-font-size\" style=\"font-style:normal;font-weight:500;line-height:0\">Collage Maker<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-flow\">\n<div class=\"wp-block-columns is-layout-flex wp-container-68\">\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/collage.png\"><img decoding=\"async\" loading=\"lazy\" width=\"624\" height=\"690\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/collage.png\" alt=\"\" class=\"wp-image-1237\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/collage.png 624w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/collage-271x300.png 271w\" sizes=\"(max-width: 624px) 100vw, 624px\" \/><\/a><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<p>This was a small prototype for building characters from reusable parts for an illustrator. Made with <strong>Flutter<\/strong>.<\/p>\n\n\n\n<p>Have a look at it here: <a href=\"https:\/\/reyn.vlietstra.co.za\/uploads\/webgl\/collage\" data-type=\"URL\" data-id=\"https:\/\/reyn.vlietstra.co.za\/uploads\/webgl\/collage\">https:\/\/reyn.vlietstra.co.za\/uploads\/webgl\/collage<\/a><\/p>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-group has-border-color has-cyan-bluish-gray-border-color is-layout-flow\" style=\"border-style:solid;border-width:1px;padding-top:5px;padding-right:5px;padding-bottom:5px;padding-left:5px\">\n<p class=\"has-text-align-center has-luminous-vivid-amber-background-color has-background has-small-font-size\" style=\"font-style:normal;font-weight:500;line-height:0\">3D Design and Printing<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-flow\">\n<p>Here are some 3D chairs I have designed with <strong>Rhino 3D<\/strong> (They are classics) and 3D printed.<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-74\">\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/rennie-mackintosh-rendered.png\"><img decoding=\"async\" loading=\"lazy\" width=\"545\" height=\"859\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/rennie-mackintosh-rendered.png\" alt=\"\" class=\"wp-image-1008\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/rennie-mackintosh-rendered.png 545w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/rennie-mackintosh-rendered-190x300.png 190w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/rennie-mackintosh-rendered-127x200.png 127w\" sizes=\"(max-width: 545px) 100vw, 545px\" \/><\/a><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/4argyle.png\"><img decoding=\"async\" loading=\"lazy\" width=\"924\" height=\"924\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/4argyle.png\" alt=\"\" class=\"wp-image-1270\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/4argyle.png 924w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/4argyle-300x300.png 300w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/4argyle-150x150.png 150w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/02\/4argyle-768x768.png 768w\" sizes=\"(max-width: 924px) 100vw, 924px\" \/><\/a><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/rennie-real.png\"><img decoding=\"async\" loading=\"lazy\" width=\"513\" height=\"870\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/rennie-real.png\" alt=\"\" class=\"wp-image-1010\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/rennie-real.png 513w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/rennie-real-177x300.png 177w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/rennie-real-118x200.png 118w\" sizes=\"(max-width: 513px) 100vw, 513px\" \/><\/a><\/figure>\n<\/div>\n<\/div>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-77\">\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/adirondack.png\"><img decoding=\"async\" loading=\"lazy\" width=\"610\" height=\"610\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/adirondack.png\" alt=\"\" class=\"wp-image-998\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/adirondack.png 610w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/adirondack-300x300.png 300w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/adirondack-150x150.png 150w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/adirondack-200x200.png 200w\" sizes=\"(max-width: 610px) 100vw, 610px\" \/><\/a><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/adirondack-real.png\"><img decoding=\"async\" loading=\"lazy\" width=\"799\" height=\"799\" src=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/adirondack-real.png\" alt=\"\" class=\"wp-image-1005\" srcset=\"https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/adirondack-real.png 799w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/adirondack-real-300x300.png 300w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/adirondack-real-150x150.png 150w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/adirondack-real-768x768.png 768w, https:\/\/reyn.vlietstra.co.za\/wp-content\/uploads\/2022\/01\/adirondack-real-200x200.png 200w\" sizes=\"(max-width: 799px) 100vw, 799px\" \/><\/a><\/figure>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n<\/div><\/div>\n            <\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Hi!My name is Reyn. What follows is some of what I\u2019ve done for employers and myself since I&#8217;ve started keeping record. (+- 2015)<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"ub_ctt_via":""},"featured_image_src":null,"_links":{"self":[{"href":"https:\/\/reyn.vlietstra.co.za\/index.php?rest_route=\/wp\/v2\/pages\/1164"}],"collection":[{"href":"https:\/\/reyn.vlietstra.co.za\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/reyn.vlietstra.co.za\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/reyn.vlietstra.co.za\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/reyn.vlietstra.co.za\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1164"}],"version-history":[{"count":68,"href":"https:\/\/reyn.vlietstra.co.za\/index.php?rest_route=\/wp\/v2\/pages\/1164\/revisions"}],"predecessor-version":[{"id":1333,"href":"https:\/\/reyn.vlietstra.co.za\/index.php?rest_route=\/wp\/v2\/pages\/1164\/revisions\/1333"}],"wp:attachment":[{"href":"https:\/\/reyn.vlietstra.co.za\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1164"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}