制作相似三角形:利用比例创建相似三角形
几何画板及绘图内容加载中,请稍等……
这个活动演示了如何使用比例关系创建相似三角形。核心数学概念包括相似三角形的性质及其对应部分的关系。作图要点涉及使用GeoGebra命令如RandomUniform、Polygon、Rotate等来构造三角形。适合6-8年级的学生用于几何学习练习。
GeoGebra 命令及参数
RandomUniform(0, 0.99, 200) → allRandomSeeds, {0.1973291391909136, 0.6432058017785154, 0.5220962330650862, 0.3406966616037323, 0.7799136318344704, 0.20397857036896422, 0.4204266090082648, 0.6848733518068142, 0.2778293275431739, 0.8684731623484921, 0.2121712309447309, 0.8549263189483602, 0.5971477709352958, 0.19950859406898777, 0.4090108149668096, 0.8899268130908313, 0.9644849306959234, 0.6816813809857319, 0.7665811336541813, 0.5632353491354566, 0.38958492878233764, 0.5781168849286876, 0.5823501793966774, 0.9155612129192731, 0.6944178150642528, 0.6362323470605767, 0.2399239337148903, 0.13053141523324055, 0.1302687677007886, 0.5312921276157896, 0.7390469226044747, 0.9467985748832267, 0.2907325361268494, 0.7572673135972761, 0.9524678579665011, 0.15566799777127135, 0.8133997391058173, 0.7011827498144554, 0.08618262682717855, 0.9391128943791076, 0.49633180280145184, 0.7697411859622655, 0.5383458671752971, 0.6398733610066295, 0.547170038649443, 0.43555938627384544, 0.7843594977703918, 0.5830976261404588, 0.8729094198978986, 0.2748338334980686, 0.7413008460527021, 0.42768605332759035, 0.5369907745419658, 0.12867282162547264, 0.4239443990610622, 0.9451361619204791, 0.34742570715404963, 0.7966900895726556, 0.1471611917561689, 0.5842643421060739, 0.5751666223120148, 0.793749263685063, 0.13544584897588305, 0.9816920145056246, 0.9258697627054625, 0.9789811271004502, 0.649726365111329, 0.08043675096379434, 0.5305720480332028, 0.19036580578885706, 0.834453051331257, 0.19233641632268894, 0.5016134441008352, 0.21827911841528166, 0.2742421495081112, 0.12436093011367583, 0.8193841298709819, 0.917447391426608, 0.9390673195457571, 0.11413026272587852, 0.53316172238101, 0.5287374018587652, 0.6701453661115752, 0.06615781383528967, 0.0354266426875939, 0.5901281766015841, 0.2352551354106864, 0.5774774665077795, 0.16360412743597985, 0.6400684696485176, 0.41225770920334387, 0.7193886424213919, 0.04617997086600173, 0.7962191711375907, 0.9530525008525688, 0.7510672511827904, 0.08157182951657337, 0.3383117854835251, 0.9371083249011084, 0.5007417362696466, 0.3980116542361158, 0.49552435363621355, 0.3340506429674714, 0.40102217667215206, 0.07100518575637813, 0.6363837390749949, 0.708564804448165, 0.7267961790203483, 0.7516820658795272, 0.16274747322766533, 0.8980924724483736, 0.006869506075969807, 0.18453646623029973, 0.4589018862054273, 0.9744525177395256, 0.024229983389185007, 0.616680284858681, 0.6522317696988099, 0.5146093762406228, 0.6044526702809849, 0.8727923154905505, 0.6732757003674189, 0.19334149358384564, 0.6273393581423965, 0.7504443602276323, 0.8102748030135234, 0.8615284747780941, 0.5134003579526704, 0.6194207157389863, 0.8065559919610069, 0.9881812075561275, 0.0842367457523407, 0.9360211105071451, 0.08826045415924379, 0.832179518950985, 0.21427029007947115, 0.7691470444569606, 0.7650350809556452, 0.2709623142907219, 0.5505946548649364, 0.9792198098788456, 0.7773504284802918, 0.1081315055253332, 0.15798471242075499, 0.7536641918056352, 0.32109012240608964, 0.750085338394068, 0.7773023006463384, 0.13381461761426958, 0.7729774193207871, 0.7433885180885575, 0.2976752182319037, 0.8276610724552951, 0.2692616338479101, 0.10961606155380411, 0.4959026008416251, 0.3108504486690363, 0.6948820492315709, 0.7928743632919496, 0.48055349942969544, 0.9647942980025912, 0.4910594690643345, 0.527107096322375, 0.6231762824502348, 0.855606839538919, 0.9259357686921853, 0.005636077422172855, 0.09492579346898235, 0.650908074865662, 0.3154882798740696, 0.26416548004074253, 0.7737407427399046, 0.6432746179491672, 0.02049214677353729, 0.23069558540578228, 0.5649678232478307, 0.5993063488325018, 0.8697848948336719, 0.5914458752692994, 0.7670303973756225, 0.721900144380018, 0.2405083132560324, 0.26097937337265165, 0.6733775326194165, 0.7303825930758941, 0.4523596196237405, 0.17724923231981238, 0.19252622577002168, 0.9786514545548936, 0.4851791120220793, 0.9282558920707329, 0.6795228647684076, 0.8854112681863545, 0.9374337478670834, 0.7964063601100783, 0.24460101777340643, 0.3929614470740334, 0.687326042408966, 0.869510353104017, 0.7582017311325526}Polygon({(-1, -1), (-1, maxDisplay), (maxDisplay, maxDisplay), (maxDisplay, -1)}) → moveAreaPointIn(moveArea) → FMoveTake(allRandomSeeds, randIndex, randIndex + numRandoms - 1) → currentRandomSeedsElement({0.5, 0.6, 0.75, 0.8, 2, 1.25, 1.5}, 1 + floor((currentRandomSeeds(2) * 7))) → scaleFactorIf(scaleFactor < 1, 1 / scaleFactor, scaleFactor) → scaleUpElement({{3, 4, 5}, {3, 6, 4}, {4, 7, 6}, {3, 7, 6}, {3, 8, 6}}, caseNum) → lengthsCurrentRotate(TemplateA + (lengthsCurrent(2), 0), angleA, TemplateA) → TemplateCTriangleCenter(TemplateA, TemplateB, TemplateC, 1) → CenterTemplateRotate(templateVertices, rotationAngle, CenterTemplate) → templateVerticesRotatedIf(smallLeft, Max[x(TemplateB), x(TemplateC)], Max[(0.75 * maxXRotated), maxYRotated]) → maxLengthIf(smallLeft, Dilate[templateVertices, maxDisplay / maxLength, TemplateA], Dilate[templateVerticesRotated, maxDisplay / maxLength, CenterTemplate]) → templateVerticesLargeIf(smallLeft, Dilate[templateVerticesRotated, (maxDisplay / maxLength * 1 / scaleUp), CenterTemplate], Dilate[templateVertices, (maxDisplay / maxLength * 1 / scaleUp), TemplateA]) → templateVerticesSmallIf(smallLeft, templateVerticesLarge, templateVerticesSmall) → verticesRightTriangleCenter(templateVerticesSmall(1), templateVerticesSmall(2), templateVerticesSmall(3), 1) → CenterSmallNumerator(scaleUp) → multiplierSegment(verticesRight(1), verticesRight(2)) → sideDESegment(verticesRight(1), If[(¬showsolution) ∧ (¬showanswer), FMove, FSoln]) → sideFDSegment(verticesRight(2), If[(¬showsolution) ∧ (¬showanswer), FMove, FSoln]) → sideEFZip(Midpoint[A, B] + UnitOrthogonalVector[A - B], A, {verticesRight(1), verticesRight(2), If[(¬showsolution) ∧ (¬showanswer), FMove, FSoln]}, B, {verticesRight(2), If[(¬showsolution) ∧ (¬showanswer), FMove, FSoln], verticesRight(1)}) → lblPosRightIf(FMove ≟ verticesRight(3), sidesSolution, Zip[closestFraction[(displayFactor * A), denominators], A, {sideDE, sideEF, sideFD}]) → displayLengthsRightMin(Zip[x(A), A, templateVerticesLarge]) → minXLargeMax(Zip[x(A), A, templateVerticesLarge]) → maxXLargeMin(Zip[y(A), A, templateVerticesLarge]) → minYLargeTranslate(If[smallLeft, templateVerticesSmall, templateVerticesLarge], If[smallLeft, CenterLeft - CenterSmall, vMove]) → verticesLeftZip(Midpoint[A, B] + (0.7 * UnitOrthogonalVector[A - B]), A, verticesLeft, B, {verticesLeft(2), verticesLeft(3), verticesLeft(1)}) → lblPosLeftMax(Zip[y(A), A, templateVerticesLarge]) → maxYLargeZip(Distance[CenterTemplate, A], A, {TemplateA, TemplateB, TemplateC}) → distanceFromCenterTriangleCenter(templateVerticesLarge(1), templateVerticesLarge(2), templateVerticesLarge(3), 1) → CenterLargeIf(¬showsolution, 250, 250) → layoutYCorner(5) → layoutAppSizeonboardingTextOffset(Corner[onboardingText, 1], Corner[onboardingText, 3], onboardingCase, Corner[1], Corner[3], Corner[5]) → OnboardingTextOffsetPolygon(verticesRight) → solnTrianglegetLabelPos(verticesLeft(1), verticesLeft(2), verticesLeft(3), 0.7, 1) → lblPosVertsLeftZip(Text[("" * A), B, false, true, 0, 0], A, {"A", "B", "C", "D"}, B, lblPosVertsLeft) → labelVertsLeftZip(Text[("" * A), B, true, true, 0, 0], A, lblLeftColor, B, lblPosLeft) → lblLeftFractionText(scaleFactor) → scaleLatexPolygon({verticesRight(1), verticesRight(2), FMove}) → studentTriangleZip(Text[("" * A), B, true, true, 0, 0], A, lblRightColor, B, lblPosRight) → lblRightSegment(verticesLeft(1), verticesLeft(2)) → sideABSegment(verticesLeft(2), verticesLeft(3)) → sideBCSegment(verticesLeft(3), verticesLeft(1)) → sideCAcirclePixels(FMove, 7 + (7 * pulsing), Corner[1], Corner[3], Corner[5]) → pulsingPointPolygon({verticesRight(1), verticesRight(2), FMove}) → studentAnswerText("D", (0, 0), true, true, -1, -1) → lblDText("E", verticesRight(2), true, true, 1, -1) → lblEIf(¬showsolution, 15, 30) → xMaxSequence(acosd(((lengthsCurrent(2))^(2) + (lengthsAll(n, 3))^(2) - (lengthsAll(n, 1))^(2)) / (((2 * lengthsCurrent(2)) * lengthsAll(n, 3)))), n, 1, 5) → anglesA, {36.86989764584401*°, 44.04862567408433*°, 41.40962210927086*°, 26.38432974940796*°, 26.38432974940796*°}Sequence(Rotate[TemplateA + (lengthsAll(n, 2), 0), anglesA(n), TemplateA], n, 1, 5) → TemplatesCIf(smallLeft, Dilate[TemplatesC, maxDisplay / maxLength, TemplateA], Dilate[TemplatesC, (maxDisplay / maxLength * 1 / scaleUp), TemplateA]) → thirdPossibilitiesStartFlatten(Zip[{n, Mirror[n, x = x(Element[verticesRight, 2]) / 2]}, n, thirdPossibilitiesStart]) → thirdPossibilitiesClosestPoint(thirdPossibilities, FMove) → closestVal
AI 绘图提示语参考
绘制两个相似三角形,一个三角形的顶点为A、B、C,另一个三角形的顶点为D、E、F。使用比例尺变换,确保两个三角形对应边的比例相同。首先在画布上随机生成一个三角形,然后根据比例尺放大或缩小生成相似三角形。确保相似三角形的对应边成比例,且顶点位置正确。
以上提示语为根据原始绘图命令整理而来,仅供参考。