Skip to content

Arthromorph genome

Alan Canon edited this page Feb 9, 2017 · 5 revisions

Original Pascal Source

	AtomKind = (Free, AnimalTrunk, AnimalJoint, AnimalClaw, SectionTrunk, SectionJoint, SectionClaw, SegmentTrunk, SegmentJoint, SegmentClaw, Joint, Claw);
	Atom = record
			Kind: AtomKind;
			Height: real;		{also used for Thickness of a Joint}
			Width: real;		{also used for Length of a Joint}
			Angle: real;		{also used in an AnimalTrunk to store the number of atoms in the animal}
						{also used in SectionTrunk to store the Overlap of segments}
						{also used in SegmentTrunk to store the rank number of the segment}
			NextLikeMe: Integer;		{where to look in the BoneYard for the next atom. 0 means end of chain}
                                                            {Also used in AnimalTrunk to store Gradient gene, slightly more or less than 100.  Treat as Percentage}
			FirstBelowMe: Integer;		{where to look in the BoneYard for the next atom. 0 means end of chain}
		end;

Example Genome and Phenotype

A multi-segmented arthromorph body

A multi-segmented arthromorph genome

Manual OCR of the above:

Height Width Angle
20.00 20.00 24.00 AnimalTrunk
01.00 05.00 05.00     AnimalJoint
01.00 01.00 01.00     AnimalClaw
01.00 01.00 00.50         SectionTrunk
01.00 01.00 01.00             SectionJoint
01.00 01.00 01.00             SectionClaw
01.00 01.00 01.00                 SegmentTrunk 1
01.00 01.00 01.79                     SegmentJoint
01.00 01.00 01.00                     SegmentClaw
01.00 05.00 02.00                       Joint
01.00 05.00 -2.00                       Joint
01.00 01.00 01.00                       Claw
01.00 01.00 02.00                 SegmentTrunk 2
01.00 01.00 02.00                     SegmentJoint
01.00 01.00 01.00                     SegmentClaw
01.00 05.00 02.00                       Joint
01.00 05.00 -2.00                       Joint
01.00 01.00 01.00                       Claw
01.00 01.00 03.00                 SegmentTrunk 2
01.00 01.00 02.00                     SegmentJoint
01.00 01.00 01.00                     SegmentClaw
01.00 05.00 02.00                       Joint
01.00 05.00 -2.00                       Joint
01.00 01.00 01.00                       Claw