BBarySlate
Espace de développement avec IA

Coordonnées barycentriques exactes

Calculez les poids barycentriques exacts de trois sommets entiers et d’un point entier, avec des coordonnées de valeur absolue au plus 10000.

● ● ●BarySlate●
Méthodes de travail · Coordonnées barycentriques exactes ×
from fractions import Fraction

def barycentric(vertices, point):
    vertices, point = tuple(tuple(v) for v in vertices), tuple(point)
    if len(vertices) != 3 or any(len(v) != 2 for v in vertices) or len(point) != 2:
        raise ValueError("triangle.shape")
    if any(type(c) is not int or abs(c) > 10000 for v in vertices + (point,) for c in v):
        raise ValueError("coordinate.range")
    (x0, y0), (x1, y1), (x2, y2) = vertices
    x, y = point
    den = (y1-y2)*(x0-x2) + (x2-x1)*(y0-y2)
    if den == 0:
        raise ValueError("triangle.degenerate")
    a = Fraction((y1-y2)*(x-x2) + (x2-x1)*(y-y2), den)
    b = Fraction((y2-y0)*(x-x2) + (x0-x2)*(y-y2), den)
    return a, b, 1-a-b
✳Calculez les poids barycentriques exacts de trois sommets entiers et d’un point entier, avec des coordonnées de valeur absolue au plus 10000.
✓ ModificationsVérifiez avant d’appliquer ↗
Illustration de l’espace de travail
ProjetTestez un sommet et un point extérieur, rejetez les sommets alignés et vérifiez la reconstruction du point.
Vérifiez avant d’appliquerComparez le comportement observé au résultat attendu. Si une vérification échoue, cherchez la cause avant de poursuivre les modifications.
ModèlesConfigurez un endpoint compatible OpenAI ou Anthropic avec son URL de base et une clé API si nécessaire. Testez la connexion. Un serveur local doit fonctionner ; les outils distants peuvent transmettre des données séparément.
Méthodes de travail

Coordonnées barycentriques exactes

Méthodes de travail ↗
Méthodes de travail
from fractions import Fraction

def barycentric(vertices, point):
    vertices, point = tuple(tuple(v) for v in vertices), tuple(point)
    if len(vertices) != 3 or any(len(v) != 2 for v in vertices) or len(point) != 2:
        raise ValueError("triangle.shape")
    if any(type(c) is not int or abs(c) > 10000 for v in vertices + (point,) for c in v):
        raise ValueError("coordinate.range")
    (x0, y0), (x1, y1), (x2, y2) = vertices
    x, y = point
    den = (y1-y2)*(x0-x2) + (x2-x1)*(y0-y2)
    if den == 0:
        raise ValueError("triangle.degenerate")
    a = Fraction((y1-y2)*(x-x2) + (x2-x1)*(y-y2), den)
    b = Fraction((y2-y0)*(x-x2) + (x0-x2)*(y-y2), den)
    return a, b, 1-a-b
Espace de développement avec IA

Transformez une exigence géométrique en modifications de code vérifiables

BarySlate est un espace de programmation pour Windows permettant de discuter de code lié à la géométrie avec un modèle d’IA que vous connectez. Commencez par le système de coordonnées et le résultat nécessaire à votre application. Décrire précisément ces conventions aide à garder une conversation utile lorsqu’un résultat visuellement plausible peut encore avoir un signe, un ordre ou une représentation numérique incorrects.

L’exemple des coordonnées barycentriques d’un triangle propose une tâche précise : examiner les poids signés et rejeter un triangle dégénéré. Demandez au modèle d’examiner la fonction avec le code qui consomme ces poids. Précisez si l’appelant a besoin de fractions exactes ou d’une autre représentation avant de demander une modification susceptible de changer cette interface.

Examinez la proposition à l’aide des sommets, d’un point intérieur et d’un point extérieur, avec des résultats attendus établis indépendamment. Incluez un cas dégénéré et suivez son parcours dans la gestion des erreurs. Exécutez ces jeux d’essai avec les outils du projet et examinez aussi le comportement du consommateur : modifier le traitement des points extérieurs peut affecter davantage que le seul calcul.

Un modèle d’IA sans restrictions n’est sélectionnable que s’il est disponible via votre point de terminaison compatible OpenAI ou Anthropic pris en charge. Fournissez des identifiants si nécessaire et vérifiez le contexte ainsi que les outils pris en charge. Les restrictions du modèle sélectionné restent applicables ; BarySlate donne aux modifications proposées un contexte de projet concret dans lequel vous pouvez les évaluer.

Avant d’accepter une proposition de code géométrique

Que préciser concernant les points extérieurs au triangle ?

Indiquez si des poids signés sont attendus et comment l’appelant les utilise. Ne supposez pas qu’un point extérieur est invalide simplement parce qu’un poids est négatif. Incluez un jeu d’essai avec un point extérieur, le résultat voulu et le comportement du consommateur.

Pourquoi mentionner les fractions exactes dans la demande ?

Changer le type de retour peut modifier les comparaisons, la sérialisation et les calculs en aval. Si votre projet dépend de valeurs exactes, précisez explicitement cette exigence. Examinez toute conversion proposée en virgule flottante avec les appelants qui recevraient ces valeurs.

Quels cas aident à isoler une erreur d’ordre des coordonnées ?

Commencez par chaque sommet et ses poids attendus, puis par un point intérieur au résultat connu. Gardez l’ordre des sommets explicite dans le jeu d’essai. Ces cas peuvent révéler des hypothèses d’ordre qu’un seul triangle affiché pourrait masquer.

BarySlate peut-il confirmer l’exactitude de ma géométrie affichée ?

Utilisez votre environnement de rendu et les vérifications du projet pour établir ce résultat. L’espace de travail permet de discuter du code et de proposer des modifications. Comparez les jeux d’essai numériques au comportement visible plutôt que de considérer une explication du modèle ou une seule image comme une vérification complète.

Télécharger pour Windows ↗

BarySlate · Mis à jour 2026-10-25