How to use the pyromaths.outils.Geometrie.choix_points function in pyromaths

To help you get started, we’ve selected a few pyromaths examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github Pyromaths / pyromaths / src / pyromaths / ex / cinquiemes / construction.py View on Github external
def quest_ALA(exo, cor):
    """on donne deux angles et la longueur du côté commun"""
    """ angBAC et angABC et AB=c"""
    A, B, C = geo.choix_points(3)
    nom = shuffle_nom([A, B, C])
    c = 0.1 * random.randint(40, 70)  # longueur AB
    angBAC = 5 * random.randint(4, 12)
    angABC = 5 * random.randint(4, 12)
    exo.append(_(u"\\item Trace un triangle $%s$ tel que $%s%s=\\unit[%s]{cm}$,  $\\widehat{%s%s%s}=%s\\degres$ et $\\widehat{%s%s%s}=%s\\degres$")
               % (nom, A, B, decimaux(c), B, A, C, angBAC, A, B, C, angABC))
    cor.append(_(u"\\item Trace un triangle $%s$ tel que $%s%s=\\unit[%s]{cm}$,  $\\widehat{%s%s%s}=%s\\degres$ et $\\widehat{%s%s%s}=%s\\degres$\\par")
               % (nom, A, B, decimaux(c), B, A, C, angBAC, A, B, C, angABC))
    x_C = (c * tan(angABC)) / (tan(angABC) + tan(angBAC))
    y_C = x_C * tan(angBAC)
    cor.append(u"\\begin{pspicture}(-0.4,-1)(%.3f,%.3f)" % (c + 1, y_C + 1))
    cor.append(u"\\pstTriangle(0,0){%s}(%.3f,0){%s}(%.3f,%.3f){%s}" % (A, c, B, x_C, y_C, C))
    cor.append(u"\\pstLineAB[nodesepB=-1]{%s}{%s}\\pstLineAB[nodesepB=-1]{%s}{%s}" % (A, C, B, C))
    cor.append(cotation((0, 0), (c, 0), decimaux(c), couleur="enonce"))
    cor.append(u"\\color{enonce}\\pstMarkAngle[linecolor=enonce]{%s}{%s}{%s}{%s\\degres}" % (B, A, C, angBAC))
    cor.append(u"\\color{enonce}\\pstMarkAngle[linecolor=enonce]{%s}{%s}{%s}{%s\\degres}" % (C, B, A, angABC))
github Pyromaths / pyromaths / src / pyromaths / ex / cinquiemes / construction.py View on Github external
def quest_rectangle_diag(exo, cor):
    """on donne un rectangle ABCD avec un côté AB et une diagonale AC"""
    A, B, C, D = geo.choix_points(4)
    nom = shuffle_nom([A, B, C, D])
    L = random.randint(40, 60)  # AB mesure entre 4cm et 7cm, tracé horizontalement
    Diag = 0.1 * random.randint(L + 10, 70)  # +1.1 pour éviter les problèmes d'arrondi
    L = 0.1 * L
    # Calcul pour tracer
    angBAC = math.degrees(math.acos(float(L) / float(Diag)))
    x_C = L
    y_C = x_C * tan(angBAC)

    exo.append(_(u"\\item Trace un rectangle $%s$ tel que $%s%s=\\unit[%s]{cm}$ et $%s%s=\\unit[%s]{cm}$.\\par")
               % (nom, A, B, decimaux(L), A, C, decimaux(Diag)))
    cor.append(_(u"\\item Trace un rectangle $%s$ tel que $%s%s=\\unit[%s]{cm}$ et $%s%s=\\unit[%s]{cm}$.\\par")
               % (nom, A, B, decimaux(L), A, C, decimaux(Diag)))
    # figure
    cor.append("\\figureadroite{")
    cor.append(u"\\begin{pspicture}(-0.4,-1)(%.3f,%.3f)" % (L + 0.4, y_C + 1))
github Pyromaths / pyromaths / src / pyromaths / ex / cinquiemes / construction.py View on Github external
def quest_rectangle_angle(exo, cor):
    """On donne un rectangle ABCD avec le côté AB et l'angle BAC"""
    A, B, C, D = geo.choix_points(4)
    nom = shuffle_nom([A, B, C, D])
    L = random.randint(40, 60)  # AB mesure entre 4cm et 7cm, tracé horizontalement
    angBAC = random.randint(25, 65)
    L = 0.1 * L
    # Calcul pour tracer
    x_C = L
    y_C = x_C * tan(angBAC)

    exo.append(_(u"\\item Trace un rectangle $%s$ tel que $%s%s=\\unit[%s]{cm}$ et $\\widehat{%s%s%s}=%s\\degres$.\\par")
               % (nom, A, B, decimaux(L), B, A, C, angBAC))
    cor.append(_(u"\\item Trace un rectangle $%s$ tel que $%s%s=\\unit[%s]{cm}$ et $\\widehat{%s%s%s}=%s\\degres$.\\par")
               % (nom, A, B, decimaux(L), B, A, C, angBAC))

    cor.append("\\figureadroite{")
    cor.append(u"\\begin{pspicture}(-0.4,-1)(%.3f,%.3f)" % (L + 0.4, y_C + 1))
    cor.append(u"\\pstTriangle(0,0){%s}(%.3f,0){%s}(%.3f,%.3f){%s}" % (A, L, B, x_C, y_C, C))
github Pyromaths / pyromaths / src / pyromaths / ex / cinquiemes / construction.py View on Github external
def quest_LAL(exo, cor):
    """on donne un angle et les longueurs de ses deux côtés"""
    """            angBAC et      AB=c et AC=b"""
    A, B, C = geo.choix_points(3)
    nom = shuffle_nom([A, B, C])
    c = 0.1 * random.randint(40, 70)  # longueur AB
    b = 0.1 * random.randint(20, 100)  # longueur BC
    angBAC = 3 * random.randint(7, 50)  # BAC mesure entre 21° et 150°

    exo.append(_(u"\\item Trace un triangle $%s$ tel que $%s%s=\\unit[%s]{cm}$, $%s%s=\\unit[%s]{cm}$ et $\\widehat{%s%s%s}=%s\\degres$")
               % (nom, A, B, decimaux(c), A, C, decimaux(b), B, A, C, angBAC))
    cor.append(_(u"\\item Trace un triangle $%s$ tel que $%s%s=\\unit[%s]{cm}$, $%s%s=\\unit[%s]{cm}$ et $\\widehat{%s%s%s}=%s\\degres$.\\par")
               % (nom, A, B, decimaux(c), A, C, decimaux(b), B, A, C, angBAC))
    cor.append(u"\\begin{pspicture}(%.3f,%.3f)(%.3f,%.3f)" % (min(0, b * cos(angBAC)) - 0.4, -1, max(b, b * cos(angBAC)) + 0.4, b * sin(angBAC) + 1))
    cor.append(u"\\pstTriangle(0,0){%s}(%.3f;%.3f){%s}(%.3f,0){%s}" % (A, b, angBAC, C, c, B))
    cor.append(u"\\color{enonce}\\pstMarkAngle[linecolor=enonce]{%s}{%s}{%s}{%s\\degres}" % (B, A, C, angBAC))
    cor.append(u"\\pstLineAB[nodesepB=-1]{%s}{%s}" % (A, C))
    cor.append(u"\\pstRotation[RotAngle=7,PointSymbol=none,PointName=none]{%s}{%s}[C_1]" % (A, C))
    cor.append(u"\\pstRotation[RotAngle=-7,PointSymbol=none,PointName=none]{%s}{%s}[C_2]" % (A, C))
    cor.append(u"\\pstArcOAB[linecolor=calcul]{%s}{C_2}{C_1}" % (A))
github Pyromaths / pyromaths / src / pyromaths / ex / cinquiemes / construction.py View on Github external
def quest_losange_CD(exo, cor):
    """On donne un losange avec la longueur d'un côté et la mesure d'un angle entre un côté et une diagonale"""

    A, B, C, D = geo.choix_points(4)
    nom = shuffle_nom([A, B, C, D])
    AC = 0.1 * random.randint(40, 60)  # AB mesure entre 4cm et 7cm, tracé horizontalement
    angBAC = random.randint(25, 75)
    # Calcul pour tracer
    x_D = AC / 2
    y_D = AC / 2 * tan(angBAC)

    exo.append(_(u"\\item Trace un losange $%s$ tel que $%s%s=\\unit[%s]{cm}$ et $\\widehat{%s%s%s}=%s\\degres$.\\par")
               % (nom, A, C, decimaux(AC), B, A, C, angBAC))
    cor.append(_(u"\\item Trace un losange $%s$ tel que $%s%s=\\unit[%s]{cm}$ et $\\widehat{%s%s%s}=%s\\degres$.\\par")
               % (nom, A, C, decimaux(AC), B, A, C, angBAC))
    # Rédaction
    cor.append(_(u" Comme $%s$ est un losange, je sais que $\\widehat{%s%s%s}=\\widehat{%s%s%s}=\\widehat{%s%s%s}=\\widehat{%s%s%s}=%s\\degres$.")
               % (nom, B, A, C, A, C, B, A, C, D, C, A, D, angBAC))
    # Programme de construction
    cor.append(u"\\begin{enumerate}")
github Pyromaths / pyromaths / src / pyromaths / ex / cinquiemes / construction.py View on Github external
def quest_losange_CDbis(exo, cor):
    """On donne un losange avec la longueur d'un côté et la mesure d'un angle entre un côté et une diagonale"""

    A, B, C, D = geo.choix_points(4)
    nom = shuffle_nom([A, B, C, D])
    AC = 0.1 * random.randint(40, 60)  # AB mesure entre 4cm et 7cm, tracé horizontalement
    angCDA = 2 * random.randint(15, 70)
    # Calcul pour tracer
    angCAD = (180 - angCDA) / 2
    x_D = AC / 2
    y_D = AC / 2 * tan(angCAD)

    exo.append(_(u"\\item Trace un losange $%s$ tel que $%s%s=\\unit[%s]{cm}$ et $\\widehat{%s%s%s}=%s\\degres$.\\par")
               % (nom, A, C, decimaux(AC), C, D, A, angCDA))
    cor.append(_(u"\\item Trace un losange $%s$ tel que $%s%s=\\unit[%s]{cm}$ et $\\widehat{%s%s%s}=%s\\degres$.\\par")
               % (nom, A, C, decimaux(AC), C, D, A, angCDA))

    # Rédaction des calculs
    cor.append(_(u"Les quatre côtés du losange sont de même longueur donc $%s%s=%s%s=%s%s=%s%s$.\\par") % (A, B, B, C, C, D, D, A))
    cor.append(_(u"Ainsi, le triangle $%s%s%s$ est isocèle en $%s$ et je peux calculer la mesure des angles $\\widehat{%s%s%s}=\\widehat{%s%s%s}$.\\par")
github Pyromaths / pyromaths / src / pyromaths / ex / sixiemes / angles.py View on Github external
def MesureAngles():
    nb_angles = 4
    (xmax, ymax) = (18, 8)  # taille de l'image en cm
    lnoms = []
    lpoints = []
    cpt = 0
    while len(lpoints) < nb_angles:
        if cpt > 1000:
            lpoints = []
            cpt = 0
        lpoints = cree_angles(nb_angles, xmax, ymax)
        cpt = cpt + 1
    tmpl = Geometrie.choix_points(3 * nb_angles)
    for i in range(nb_angles):
        lnoms.append(tuple(tmpl[3 * i:3 * i + 3]))
    exo = ["\\exercice", "Nommer, mesurer et donner la nature de chacun des angles suivants :\\par "]
    cor = ["\\exercice*", "Nommer, mesurer et donner la nature de chacun des angles suivants :\\par "]
    figure(exo, cor, lpoints, lnoms, xmax, ymax)
    reponses(exo, cor, lpoints, lnoms)
    return (exo, cor)
github Pyromaths / pyromaths / src / pyromaths / ex / troisiemes / geometrie.py View on Github external
def rec_thales(exo, cor):
    noms = choix_points(5)  # les noms des sommets
    valeurs = valeurs_reciproque_thales()
    exo.append(tex_fig_rec_thales(noms, valeurs))
    exo.append(tex_enonce_rec_thales(noms, valeurs) + '\\vspace{2cm}}') #le dernier '}' ferme le bloc exercice
    cor.append(tex_fig_rec_thales(noms, valeurs))
    cor.append(tex_enonce_rec_thales(noms, valeurs) +
             "\\par\\dotfill{}\\\\}\n")
    cor.append(tex_resolution_rec_thales0(noms, valeurs))
    cor.append(tex_resolution_rec_thales1(noms, valeurs))
github Pyromaths / pyromaths / src / pyromaths / ex / cinquiemes / construction.py View on Github external
def quest_losange_CC(exo, cor):
    """On donne un losange avec la longueur d'un côté et un angle entre côtés"""
    # diagonale ou demi-diagonale
    A, B, C, D = geo.choix_points(4)
    nom = shuffle_nom([A, B, C, D])
    AB = 0.2 * random.randint(15, 25)  # AB mesure entre 4cm et 8cm, tracé horizontalement
    angBAD = random.randint(30, 150)
    # Calcul pour tracer
    x_D = AB * cos(angBAD)
    y_D = y_C = AB * sin(angBAD)
    x_C = x_D + AB

    exo.append(_(u"\\item Trace un losange $%s$  tel que $%s%s=\\unit[%s]{cm}$ et $\\widehat{%s%s%s}=%s\\degres$.\\par")
               % (nom, A, B, decimaux(AB), B, A, D, angBAD))
    cor.append(_(u"\\item Trace un losange $%s$  tel que $%s%s=\\unit[%s]{cm}$ et $\\widehat{%s%s%s}=%s\\degres$.\\par")
               % (nom, A, B, decimaux(AB), B, A, D, angBAD))

    cor.append(_(u"Les quatre côtés du losange sont de même longueur donc $%s%s=%s%s=%s%s=%s%s=\\unit[%s]{cm}$ ;") % (A, B, B, C, C, D, D, A, decimaux(AB)))
    cor.append(u"\\begin{enumerate}")
    cor.append(_(u"\\item On trace le côté $[%s%s]$ puis on mesure l'angle $\\widehat{%s%s%s}=%s\\degres$ ;") % (A, B, B, A, D, angBAD))