MCPcopy Create free account
hub / github.com/RT-Thread/env-windows / TNavigator

Class TNavigator

tools/python-3.11.9-amd64/Lib/turtle.py:1511–2019  ·  view source on GitHub ↗

Navigation part of the RawTurtle. Implements methods for turtle movement.

Source from the content-addressed store, hash-verified

1509 onkeyrelease = onkey
1510
1511class TNavigator(object):
1512 """Navigation part of the RawTurtle.
1513 Implements methods for turtle movement.
1514 """
1515 START_ORIENTATION = {
1516 "standard": Vec2D(1.0, 0.0),
1517 "world" : Vec2D(1.0, 0.0),
1518 "logo" : Vec2D(0.0, 1.0) }
1519 DEFAULT_MODE = "standard"
1520 DEFAULT_ANGLEOFFSET = 0
1521 DEFAULT_ANGLEORIENT = 1
1522
1523 def __init__(self, mode=DEFAULT_MODE):
1524 self._angleOffset = self.DEFAULT_ANGLEOFFSET
1525 self._angleOrient = self.DEFAULT_ANGLEORIENT
1526 self._mode = mode
1527 self.undobuffer = None
1528 self.degrees()
1529 self._mode = None
1530 self._setmode(mode)
1531 TNavigator.reset(self)
1532
1533 def reset(self):
1534 """reset turtle to its initial values
1535
1536 Will be overwritten by parent class
1537 """
1538 self._position = Vec2D(0.0, 0.0)
1539 self._orient = TNavigator.START_ORIENTATION[self._mode]
1540
1541 def _setmode(self, mode=None):
1542 """Set turtle-mode to 'standard', 'world' or 'logo'.
1543 """
1544 if mode is None:
1545 return self._mode
1546 if mode not in ["standard", "logo", "world"]:
1547 return
1548 self._mode = mode
1549 if mode in ["standard", "world"]:
1550 self._angleOffset = 0
1551 self._angleOrient = 1
1552 else: # mode == "logo":
1553 self._angleOffset = self._fullcircle/4.
1554 self._angleOrient = -1
1555
1556 def _setDegreesPerAU(self, fullcircle):
1557 """Helper function for degrees() and radians()"""
1558 self._fullcircle = fullcircle
1559 self._degreesPerAU = 360/fullcircle
1560 if self._mode == "standard":
1561 self._angleOffset = 0
1562 else:
1563 self._angleOffset = fullcircle/4.
1564
1565 def degrees(self, fullcircle=360.0):
1566 """ Set angle measurement units to degrees.
1567
1568 Optional argument:

Callers

nothing calls this directly

Calls 1

Vec2DClass · 0.85

Tested by

no test coverage detected