(note: The entries are in English and some are translated to Cyc or LISP. If
you think entries should have a certain format or follow templates, you can
enter the discussions-part)
(note: You can add empty entries if to let people know this information is still needed)
http://en.wikipedia.org/wiki/Line_%28mathematics%29
http://en.wikipedia.org/wiki/Point_%28geometry%29
entry: line drawings are 2-dimensional. This means the points and lines are 2-dimensional.
entry: a point in 2d-space can be seen as a list of 2 numbers
entry: a line in 2d-space can be seen as a list of 2 points
entry: a point usually has 2 coordinates. A coordinate is a natural number or a real number.
Cyc entry: Point http://opencyc1.cyc.com:3602/cgi-bin/cyccgi/cg?cb-cf&c40157
entry: 0 is a natural number and any natural number plus one is a natural number too
entry: the number 0 can be visualized as empty space
the number 1 can be visualized as a point in
entry: you can usually approximate a real number with a natural number.
entry: a space has a certain number of dimensions. Line drawings
are usually in a 2d-space.
entry: How to draw a given number of lines
entry: how to construct a square given a collection of lines
entry: how to construct an arrow
entry: ways to turn squares into triangles
entry: to make a square you need
- 2 horizontal lines
- 2 vertical lines
entry: to find all the horizontal lines in the drawing
- refresh-horizontal-lines
- look in the *horizontal-lines* collection
entry: to make a square, you need to make sure all the lines
have equal length
entry: to make a square, you can only have right corners
entry: to make a corner 90 degrees, you can rotate one of lines
entry: to compute an angle , you need to..
entry: objects usually have a representations and are usually stored in variable
entry: variables can be stores in collections
entry: a line can be represented as ((2,3) , (3,3)).
entry: a line can be represented as (dot1, dot2). this can be called line-type2
a list of 2 dots can be seen as a line from the first to the last
entry: a dot can be represented as (3,3). this can be called dot-type1
a list of 2 dots can be seen as a dot
entry: all the lines and dots of the drawing are kept in *storage1*
to refresh them after the drawing changes, use
-refresh-storage1 (action)
entry: you should check if rules can be applied, any apply them if they
are useful
entry: if you don't know what to do, do a random action
entry: do a random action do-random-action (action)
entry: you can go from line-type1 to line-type2 if you know the coordinates of the dots
entry: a number can be represented visually as a square with a number in it
entry: a list can be represented visually as linked squares
entry: a line is a horizontal line when the dots have the same y-coordinate
(defun horizontal-line-rule (x)
(progn
(setq y1 (first (first x)))
(setq y2 (first (second x)))
(if (eq y1 y2) T nil )
)
)
entry: store all the horizontal lines in the drawing
(defun refresh-horizontal-lines ()
(dolist (x *lines*)
(if (and
(horizontal-line-rule x)
(not (member x *horizontal-lines* ))
)
(push x *horizontal-lines* )
)
)
)
entry: an example of a drawing is a line from (3,3) to (3,2)
(defun set-test-drawing ()
(setq dot1 (list 3 3))
(setq dot2 (list 3 2))
(setq *dots* (list dot1 dot2))
(setq line1 (list dot1 dot2))
(setq *lines* (list line1))
)





