Last active
May 5, 2022 11:28
-
-
Save kenwebb/23e4749f7ea51d800e9a94a353892245 to your computer and use it in GitHub Desktop.
Pigeon Deterrence System (PDS)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="UTF-8"?> | |
<!--Xholon Workbook http://www.primordion.com/Xholon/gwt/ MIT License, Copyright (C) Ken Webb, Thu May 05 2022 07:28:01 GMT-0400 (Eastern Daylight Saving Time)--> | |
<XholonWorkbook> | |
<Notes><![CDATA[ | |
Xholon | |
------ | |
Title: Pigeon Deterrence System (PDS) | |
Description: | |
Url: http://www.primordion.com/Xholon/gwt/ | |
InternalName: 23e4749f7ea51d800e9a94a353892245 | |
Keywords: | |
My Notes | |
-------- | |
5 May 2022 | |
Pigeons enjoy landing on the two balconies of our 17th floor condo. | |
We are designing and building a simple Pigeon Deterrence System (PDS) on the side balcony where they mostly land. | |
The PDS consists of segments of fishing line threaded through a set of upright metal pieces. | |
The uprights are constructed out of metal coat hanger wire. | |
In this Xholon workbook, I design the uprights. | |
Each upright has a small number of functional components and sub-components. | |
I also use this workbook to lay out a complete upright piece, using an Avatar moving in a grid. | |
The Avatar will turn left and right, and will move forward starting at one end of the upright. | |
TODO | |
- add a Xholon Grid | |
- use DefaultContent in CD | |
- use Avatar, with an Avatar behavior | |
]]></Notes> | |
<_-.XholonClass> | |
<!-- domain objects --> | |
<PigeonDeterrenceSystem/> | |
<CentUnit> <!-- The basic unit that all components are made out of; nominally = 1 centimeter --> | |
<Spacer/> <!-- a Spacer consists of 1 or more CentUnits --> | |
</CentUnit> | |
<FishingLineSegment/> | |
<PdsUpright/> | |
<PdsComponent> | |
<HorizontalStabilizer/> <!-- prevents the upright from rotating --> | |
<Vertical> | |
<VerticalAbove/> | |
<VerticalBelow/> | |
</Vertical> | |
<TopExtension/> | |
<Loop/> <!-- a circle with a circumference of about 5 centimeters --> | |
</PdsComponent> | |
<Fastener/> <!-- a screw or other thing that fastens an upright to the concrete balcony wall --> | |
</_-.XholonClass> | |
<xholonClassDetails> | |
<VerticalAbove><Color>red</Color></VerticalAbove> | |
<VerticalBelow><Color>orange</Color></VerticalBelow> | |
</xholonClassDetails> | |
<PigeonDeterrenceSystem> | |
<FishingLineSegment/> | |
<PdsUpright multiplicity="1"> | |
<VerticalAbove> | |
<TopExtension> | |
<Loop/> | |
<Spacer/> | |
<Loop/> | |
<Spacer/> | |
</TopExtension> | |
<Spacer multiplicity="7"/> | |
</VerticalAbove> | |
<VerticalBelow> | |
<Spacer multiplicity="1"/> | |
<HorizontalStabilizer roleName="Left HS"/> | |
<Spacer multiplicity="1"/> | |
<HorizontalStabilizer roleName="Right HS"/> | |
<Spacer multiplicity="1"/> | |
</VerticalBelow> | |
</PdsUpright> | |
</PigeonDeterrenceSystem> | |
<PigeonDeterrenceSystembehavior implName="org.primordion.xholon.base.Behavior_gwtjs"><![CDATA[ | |
var a = 123; | |
var b = 456; | |
var c = a * b; | |
if (console) { | |
console.log(c); | |
} | |
//# sourceURL=PigeonDeterrenceSystembehavior.js | |
]]></PigeonDeterrenceSystembehavior> | |
<Loopbehavior implName="org.primordion.xholon.base.Behavior_gwtjs"><![CDATA[ | |
var loop, testing; | |
var beh = { | |
postConfigure: function() { | |
testing = Math.floor(Math.random() * 10); | |
loop = this.cnode.parent(); | |
}, | |
act: function() { | |
loop.println(this.toString()); | |
}, | |
toString: function() { | |
return loop.name() + " testing:" + testing; | |
} | |
} | |
//# sourceURL=Loopbehavior.js | |
]]></Loopbehavior> | |
<SvgClient><Attribute_String roleName="svgUri"><![CDATA[data:image/svg+xml, | |
<svg width="100" height="50" xmlns="http://www.w3.org/2000/svg"> | |
<g> | |
<title>Pigeon Deterrence System (PDS)</title> | |
<rect id="PigeonDeterrenceSystem" fill="#98FB98" height="50" width="50" x="25" y="0"/> | |
<g> | |
<title>Height</title> | |
<rect id="PigeonDeterrenceSystem/PdsUpright" fill="#6AB06A" height="50" width="10" x="80" y="0"/> | |
</g> | |
</g> | |
</svg> | |
]]></Attribute_String><Attribute_String roleName="setup">${MODELNAME_DEFAULT},${SVGURI_DEFAULT}</Attribute_String></SvgClient> | |
</XholonWorkbook> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment