Léa Saviot
0d03afb3a3
[python/port] Increase stack limit on emscripten, simulator...
...
The value is quite arbitrary, we just do not want to outperfom the
device but still provide more recursion depth.
2019-06-26 16:47:59 +02:00
Émilie Feral
c611084086
[python] Clean gc_collect and comment to explain potential address
...
sanitize error
2019-06-17 15:38:53 -04:00
Émilie Feral
84ae25b09f
[python] Turtle module: fix modturtle_gc_collect from stack-buffer-overflow
2019-06-17 15:38:53 -04:00
Léa Saviot
3a390111d8
[python/urandom] Use Ion::random to seed urandom
2019-05-03 15:54:20 +02:00
Léa Saviot
352850e481
[python] Fix typo
2019-05-03 15:54:20 +02:00
Léa Saviot
e8b3db76b2
[python/turtle] Fix rounding errors
...
Some horizontal/vertical lines were not properly drawn
Example script:
from math import *
from turtle import *
def a():
def carre(n):
fd(n)
right(90)
fd(n)
right(90)
fd(n)
right(90)
fd(n)
right(90)
penup()
goto(-158,109)
pendown()
carre(100)
for j in range(10):
for i in range(26):
penup()
fd(2)
pendown()
carre(10)
penup()
fd(10)
pendown()
penup()
goto(-158,109-10*(j+1))
pendown()
2019-05-03 15:53:21 +02:00
Romain Goyet
42f72eee77
[python/kandinsky] draw_string takes two optional colors (text/bg)
2019-04-26 17:44:27 +02:00
Romain Goyet
ec50e75a3a
[python/kandinsky] Bubble-up input errors before switching to draw mode
2019-04-26 17:44:27 +02:00
Romain Goyet
926b96cafb
[python/kandinsky] Expose the fill_rect method
...
Which allows for *much* faster graphics
2019-04-26 17:44:27 +02:00
Romain Goyet
bb89ae9211
[python/kandinsky] Color can now be passed as a tuple
...
The values are expected to be integers between 0 and 255
2019-04-26 17:44:27 +02:00
Léa Saviot
2a34f955ca
[python/turtle] Fix some turtle jumps
...
There was a drawing glitch for instance when doing goto(100,100).
It was due to the tutle mileage being overflowed.
2019-03-12 09:51:40 +01:00
Léa Saviot
ddb22ba1a2
[python/turtle] Fix drawing of diagonal lines
2019-03-12 09:51:40 +01:00
Léa Saviot
147c1b4592
[python/turtle] Make the turtle faster on emscripten
...
It was slower than on the calculator
2019-03-12 09:51:40 +01:00
Léa Saviot
a036bff275
[python/turtle] Fix setHeadingPrivate (handle big angle errors)
2019-02-11 13:41:10 +01:00
Léa Saviot
3faee8bcd8
[python/turtle] Special case when goTo draws horizontal/vertical line
2019-02-06 11:45:03 +01:00
Léa Saviot
b5e278526f
[python/turtle] Use namespace std
2019-02-06 11:45:03 +01:00
Léa Saviot
287dedabc0
[python/turtle] The turtle heading is in [0;360[
2019-02-06 11:45:03 +01:00
Léa Saviot
a25b2a8ce5
[python/turtle] Fix unwanted dotted lines
...
Script:
fd(200)
left(90)
fd(10)
left(90)
fd(600)
The final line should be continuous but is dotted
2019-02-06 11:45:03 +01:00
Léa Saviot
a021af46fe
[apps/code] Hide the sandbox between script importations
2019-02-06 11:45:03 +01:00
Léa Saviot
fdc02ee5e1
[python/port] Fix size of gc collection
2019-01-21 14:23:38 +01:00
Léa Saviot
835c112f2f
[python/port] Clean gc_collect
2019-01-21 14:23:38 +01:00
Léa Saviot
5e714c371c
[python/turtle] Increase chances that GC collection works fine on turtle
2019-01-21 14:23:38 +01:00
Léa Saviot
2bde26af69
[python/turtle] Specify namespace std when using cos, sin
2019-01-21 13:39:47 +01:00
Léa Saviot
2f9f40f1a7
[python/turtle] Store the heading in degrees with no k_headingOffset
...
This reduces rouding errors, such as:
setHeading(0)
right(1)
heading() -> gives -1.00...01
2019-01-21 13:39:47 +01:00
Léa Saviot
177373c5af
[apps/code] Handle carriage returns in the input text
2019-01-10 11:42:05 +01:00
Léa Saviot
c2dbe9f7cc
[python/turtle] Fix line drawing glitches
2018-12-21 11:57:36 +01:00
Léa Saviot
5a941bc1d5
[python/turtle] Clean circle code
2018-12-21 11:57:09 +01:00
Léa Saviot
4b306791c0
[python/turtle] Turtle::m_drawn is false if sandbox not displayed
...
This way, Turtle::draw() and erase() are more symetrical and no not
perform themselves if the turtle is already drawn / erased.
2018-12-18 12:05:46 +01:00
Léa Saviot
ad745f7114
[python/turtle] Add speed() methods without args
2018-12-17 15:40:34 +01:00
Léa Saviot
306869edca
[python/turtle] Tune values of the turtle speed
2018-12-13 09:44:34 +01:00
Léa Saviot
91c4fea517
[python/turtle] Clean Turtle::PawPosition
2018-12-12 15:45:21 +01:00
Léa Saviot
8ac60983ed
[python/turtle] Remove old turtle icon
2018-12-12 15:45:21 +01:00
Léa Saviot
99d71bb0d9
[python/turtle] Clean Turtle::setColor
2018-12-12 15:45:21 +01:00
Léa Saviot
3bd3e64e36
[python/turtle] Order the qstr
2018-12-11 14:42:04 +01:00
Léa Saviot
62cda01d2b
[python/turtle] color and pencolor can take various arguments
...
These two methods are equal.
2018-12-11 14:42:04 +01:00
Léa Saviot
23e3038c00
[python/turtle] Remove waitForVBlank before drawings
...
The drawing was really slowed down by the waiting, and no tearing effect
has been noticed without waitForVBlank
2018-12-10 17:36:52 +01:00
Léa Saviot
d545c4532a
[python/turtle] When speed = 0, do not draw the turtle during "goTo"
2018-12-10 17:14:23 +01:00
Léa Saviot
7efb48ab6e
[python/turtle] Turtle::circle's angle argument is optional
2018-12-10 16:59:11 +01:00
Léa Saviot
fa0e93e8ac
[python/turtle] Fix Turtle::circle for negative angles
2018-12-10 16:51:16 +01:00
Léa Saviot
3249ccb695
[python/turtle] "back()" shortcut for "backwards()"
2018-12-10 14:31:44 +01:00
Léa Saviot
3b334257ad
[python/turlte] Move the turtle paws to mimic crawling
2018-12-10 14:10:44 +01:00
Léa Saviot
c95e291dd1
[python/turtle] First icon redesign
2018-12-07 16:58:59 +01:00
Léa Saviot
c8a5972243
[python/turtle] Turtle::circle(radius, angle)
2018-12-07 10:51:14 +01:00
Léa Saviot
cc3beb6014
[python/turtle] Turtle::reset() method
2018-12-06 17:26:43 +01:00
Léa Saviot
9c9355deba
[python/turtle] Use Escher::Metric values instead of copying them
2018-12-06 17:26:43 +01:00
Léa Saviot
3ca1790908
[python/turtle] The Y axis is oriented upwards
2018-12-06 17:26:35 +01:00
Léa Saviot
432e259f30
[python/turtle] Speed max and min should produce the same behavior
2018-12-06 13:55:07 +01:00
Léa Saviot
d530637591
[python/turtle] Fix speed type
2018-12-06 13:38:05 +01:00
Léa Saviot
e769255c05
[python/turtle] Default pen size is 1
2018-12-06 11:55:29 +01:00
Léa Saviot
4b3ce7a7f1
[python/turtle] Fix Turtle::setSpeed
...
If speed > 10 or < 0.5, it should be set to 0. When speed is 10 or 0,
the drawing should be instantaneous. Default speed is 3.
2018-12-06 11:55:20 +01:00