Khoảng cách từ điểm đến dòng 3d (Python)

Trả về góc không phản xạ được tạo bởi các tia phát ra từ gốc tọa độ có hướng trùng với vectơ chỉ phương của các thực thể tuyến tính

Thông số .

l1. Thực thể tuyến tính

l2. Thực thể tuyến tính

Trả về .

góc. góc tính bằng radian

ghi chú

Từ tích vô hướng của vectơ v1 và v2 ta biết rằng

>>> from sympy import Point3D, Line3D
>>> r1 = Line3D(Point3D(0, 0, 0), Point3D(1, 0, 0))
>>> r2 = Line3D(Point3D(0, 0, 0), Point3D(0, 1, 0))
>>> r1.bisectors(r2)
[Line3D(Point3D(0, 0, 0), Point3D(1, 1, 0)), Line3D(Point3D(0, 0, 0), Point3D(1, -1, 0))]
2

trong đó A là góc tạo thành giữa hai vectơ. Chúng ta có thể lấy các vectơ chỉ phương của hai đường thẳng và dễ dàng tìm thấy góc giữa hai đường thẳng bằng công thức trên

ví dụ

>>> from sympy import Line
>>> e = Line((0, 0), (1, 0))
>>> ne = Line((0, 0), (1, 1))
>>> sw = Line((1, 1), (0, 0))
>>> ne.angle_between(e)
pi/4
>>> sw.angle_between(e)
3*pi/4

Để có được góc không tù tại giao điểm của các đường thẳng, hãy sử dụng phương pháp

>>> from sympy import Point3D, Line3D
>>> r1 = Line3D(Point3D(0, 0, 0), Point3D(1, 0, 0))
>>> r2 = Line3D(Point3D(0, 0, 0), Point3D(0, 1, 0))
>>> r1.bisectors(r2)
[Line3D(Point3D(0, 0, 0), Point3D(1, 1, 0)), Line3D(Point3D(0, 0, 0), Point3D(1, -1, 0))]
3

>>> sw.smallest_angle_between(e)
pi/4

>>> from sympy import Point3D, Line3D
>>> p1, p2, p3 = Point3D(0, 0, 0), Point3D(1, 1, 1), Point3D(-1, 2, 0)
>>> l1, l2 = Line3D(p1, p2), Line3D(p2, p3)
>>> l1.angle_between(l2)
acos(-sqrt(2)/3)
>>> l1.smallest_angle_between(l2)
acos(sqrt(2)/3)

Xem thêm

,

arbitrary_point(tham số=không')

Một điểm được tham số hóa trên Line

Thông số .

tham số. str, tùy chọn

Tên của tham số sẽ được sử dụng cho điểm tham số. Giá trị mặc định là 't'. Khi tham số này là 0, điểm đầu tiên được sử dụng để xác định dòng sẽ được trả về và khi nó là 1, điểm thứ hai sẽ được trả về

Trả về .

điểm. Điểm

Tăng .

Giá trịError

Khi

>>> from sympy import Point3D, Line3D
>>> r1 = Line3D(Point3D(0, 0, 0), Point3D(1, 0, 0))
>>> r2 = Line3D(Point3D(0, 0, 0), Point3D(0, 1, 0))
>>> r1.bisectors(r2)
[Line3D(Point3D(0, 0, 0), Point3D(1, 1, 0)), Line3D(Point3D(0, 0, 0), Point3D(1, -1, 0))]
6 đã xuất hiện trong định nghĩa của Line

ví dụ

>>> from sympy import Point, Line
>>> p1, p2 = Point(1, 0), Point(5, 3)
>>> l1 = Line(p1, p2)
>>> l1.arbitrary_point()
Point2D(4*t + 1, 3*t)
>>> from sympy import Point3D, Line3D
>>> p1, p2 = Point3D(1, 0, 0), Point3D(5, 3, 1)
>>> l1 = Line3D(p1, p2)
>>> l1.arbitrary_point()
Point3D(4*t + 1, 3*t, t)

Xem thêm

static are_concurrent(*dòng)

Là một chuỗi các thực thể tuyến tính đồng thời?

Hai hoặc nhiều thực thể tuyến tính đồng quy nếu chúng cắt nhau tại một điểm

Thông số .

dòng. một chuỗi các thực thể tuyến tính

Trả về .

Thật. nếu tập hợp các thực thể tuyến tính cắt nhau tại một điểm

Sai. nếu không thì

ví dụ

>>> from sympy import Point, Line
>>> p1, p2 = Point(0, 0), Point(3, 5)
>>> p3, p4 = Point(-2, -2), Point(0, 2)
>>> l1, l2, l3 = Line(p1, p2), Line(p1, p3), Line(p1, p4)
>>> Line.are_concurrent(l1, l2, l3)
True
>>> l4 = Line(p2, p3)
>>> Line.are_concurrent(l2, l3, l4)
False
>>> from sympy import Point3D, Line3D
>>> p1, p2 = Point3D(0, 0, 0), Point3D(3, 5, 2)
>>> p3, p4 = Point3D(-2, -2, -2), Point3D(0, 2, 1)
>>> l1, l2, l3 = Line3D(p1, p2), Line3D(p1, p3), Line3D(p1, p4)
>>> Line3D.are_concurrent(l1, l2, l3)
True
>>> l4 = Line3D(p2, p3)
>>> Line3D.are_concurrent(l2, l3, l4)
False

Xem thêm

đường phân giác(khác)

Trả về các đường vuông góc đi qua các giao điểm của bản thân và của người khác trong cùng một mặt phẳng

Thông số .

đường kẻ. Dòng3D

Trả về .

danh sách. hai trường hợp Line

ví dụ

>>> from sympy import Point3D, Line3D
>>> r1 = Line3D(Point3D(0, 0, 0), Point3D(1, 0, 0))
>>> r2 = Line3D(Point3D(0, 0, 0), Point3D(0, 1, 0))
>>> r1.bisectors(r2)
[Line3D(Point3D(0, 0, 0), Point3D(1, 1, 0)), Line3D(Point3D(0, 0, 0), Point3D(1, -1, 0))]

chứa(khác)

Các lớp con nên triển khai phương thức này và sẽ trả về True nếu other nằm trên ranh giới của self;

thuộc tính phương hướng

Vectơ chỉ phương của LinearEntity

Trả về .

P. một điểm;

hướng của \(self\)

ví dụ

>>> from sympy import Line
>>> a, b = (1, 1), (1, 3)
>>> Line(a, b).direction
Point2D(0, 2)
>>> Line(b, a).direction
Point2D(0, -2)

Điều này có thể được báo cáo để khoảng cách từ nguồn gốc là 1

>>> Line(b, a).direction.unit
Point2D(0, -1)

Xem thêm

giao lộ(khác)

Giao lộ với một thực thể hình học khác

Thông số .

o. Điểm hoặc LinearEntity

Trả về .

ngã tư. danh sách các thực thể hình học

ví dụ

>>> from sympy import Point, Line
>>> p1, p2 = Point(0, 0, 0), Point(1, 1, 1)
>>> l1 = Line(p1, p2)
>>> l1.ambient_dimension
3
0

Xem thêm

is_parallel(l2)

Là hai thực thể tuyến tính song song?

Thông số .

l1. Thực thể tuyến tính

l2. Thực thể tuyến tính

Trả về .

Thật. nếu l1 và l2 song song,

Sai. nếu không thì

ví dụ

>>> from sympy import Point, Line
>>> p1, p2 = Point(0, 0, 0), Point(1, 1, 1)
>>> l1 = Line(p1, p2)
>>> l1.ambient_dimension
3
1

Xem thêm

is_perpendicular(l2)

Hai thực thể tuyến tính có vuông góc không?

Thông số .

l1. Thực thể tuyến tính

l2. Thực thể tuyến tính

Trả về .

Thật. nếu l1 và l2 vuông góc với nhau thì

Sai. nếu không thì

ví dụ

>>> from sympy import Point, Line
>>> p1, p2 = Point(0, 0, 0), Point(1, 1, 1)
>>> l1 = Line(p1, p2)
>>> l1.ambient_dimension
3
2

Xem thêm

is_similar(khác)

Trả về True nếu self và other nằm trong cùng một dòng

ví dụ

>>> from sympy import Point, Line
>>> p1, p2 = Point(0, 0, 0), Point(1, 1, 1)
>>> l1 = Line(p1, p2)
>>> l1.ambient_dimension
3
3

thuộc tính chiều dài

chiều dài của dòng

ví dụ

>>> from sympy import Point, Line
>>> p1, p2 = Point(0, 0, 0), Point(1, 1, 1)
>>> l1 = Line(p1, p2)
>>> l1.ambient_dimension
3
4

thuộc tính p1

Điểm xác định đầu tiên của một thực thể tuyến tính

ví dụ

>>> from sympy import Point, Line
>>> p1, p2 = Point(0, 0, 0), Point(1, 1, 1)
>>> l1 = Line(p1, p2)
>>> l1.ambient_dimension
3
5

Xem thêm

thuộc tính p2

Điểm xác định thứ hai của một thực thể tuyến tính

ví dụ

>>> from sympy import Point, Line
>>> p1, p2 = Point(0, 0, 0), Point(1, 1, 1)
>>> l1 = Line(p1, p2)
>>> l1.ambient_dimension
3
6

Xem thêm

đường_song_song(p)

Tạo một Đường mới song song với thực thể tuyến tính đi qua điểm này \(p\) .

Thông số .

P. Điểm

Trả về .

đường kẻ. Đường kẻ

ví dụ

>>> from sympy import Point, Line
>>> p1, p2 = Point(0, 0, 0), Point(1, 1, 1)
>>> l1 = Line(p1, p2)
>>> l1.ambient_dimension
3
7

Xem thêm

đường thẳng vuông góc(p)

Tạo một Đường mới vuông góc với thực thể tuyến tính này đi qua điểm \(p\) .

Thông số .

P. Điểm

Trả về .

đường kẻ. Đường kẻ

ví dụ

>>> from sympy import Point, Line
>>> p1, p2 = Point(0, 0, 0), Point(1, 1, 1)
>>> l1 = Line(p1, p2)
>>> l1.ambient_dimension
3
8

Trong 3D, điểm đầu tiên được sử dụng để xác định đường thẳng là điểm mà đường vuông góc bắt buộc phải đi qua;

>>> from sympy import Point, Line
>>> p1, p2 = Point(0, 0, 0), Point(1, 1, 1)
>>> l1 = Line(p1, p2)
>>> l1.ambient_dimension
3
9

Xem thêm

,

đoạn_vuông(p)

Tạo một đoạn thẳng vuông góc từ \(p\) đến đường thẳng này.

Các điểm cuối của đoạn là

>>> from sympy import Line
>>> a, b = (1, 1), (1, 3)
>>> Line(a, b).direction
Point2D(0, 2)
>>> Line(b, a).direction
Point2D(0, -2)
8 và điểm gần nhất trong dòng chứa self. (Nếu bản thân không phải là một dòng, điểm có thể không nằm trong bản thân. )

Thông số .

P. Điểm

Trả về .

bộ phận. Bộ phận

ghi chú

Trả về chính \(p\) nếu \(p\) is on this linear entity.

ví dụ

>>> from sympy import Line
>>> e = Line((0, 0), (1, 0))
>>> ne = Line((0, 0), (1, 1))
>>> sw = Line((1, 1), (0, 0))
>>> ne.angle_between(e)
pi/4
>>> sw.angle_between(e)
3*pi/4
0

Xem thêm

điểm điểm

Hai điểm được sử dụng để xác định thực thể tuyến tính này

Trả về .

điểm. bộ điểm

ví dụ

>>> from sympy import Line
>>> e = Line((0, 0), (1, 0))
>>> ne = Line((0, 0), (1, 1))
>>> sw = Line((1, 1), (0, 0))
>>> ne.angle_between(e)
pi/4
>>> sw.angle_between(e)
3*pi/4
1

Xem thêm

hình chiếu(khác)

Chiếu một điểm, đường thẳng, tia hoặc đoạn lên thực thể tuyến tính này

Thông số .

khác. Điểm hoặc Thực thể tuyến tính (Đường, Tia, Đoạn)

Trả về .

chiếu. Điểm hoặc Thực thể tuyến tính (Đường, Tia, Đoạn)

Kiểu trả về khớp với kiểu của tham số

>>> Line(b, a).direction.unit
Point2D(0, -1)
1

Tăng .

Hình HọcLỗi

Khi phương thức không thể thực hiện phép chiếu

ghi chú

Một phép chiếu liên quan đến việc lấy hai điểm xác định thực thể tuyến tính và chiếu các điểm đó lên một Đường và sau đó cải tổ thực thể tuyến tính bằng cách sử dụng các phép chiếu này. Một điểm P được chiếu lên một đường thẳng L bằng cách tìm điểm trên L gần P nhất. Điểm này là giao điểm của L và đường thẳng vuông góc với L đi qua P

ví dụ

>>> from sympy import Line
>>> e = Line((0, 0), (1, 0))
>>> ne = Line((0, 0), (1, 1))
>>> sw = Line((1, 1), (0, 0))
>>> ne.angle_between(e)
pi/4
>>> sw.angle_between(e)
3*pi/4
2

Xem thêm

,

random_point(hạt=Không có)

Một điểm ngẫu nhiên trên LinearEntity

Trả về .

điểm. Điểm

ví dụ

>>> from sympy import Line
>>> e = Line((0, 0), (1, 0))
>>> ne = Line((0, 0), (1, 1))
>>> sw = Line((1, 1), (0, 0))
>>> ne.angle_between(e)
pi/4
>>> sw.angle_between(e)
3*pi/4
3

Xem thêm

smallest_angle_between(l2)

Trả về góc nhỏ nhất được hình thành tại giao điểm của các đường chứa các thực thể tuyến tính

Thông số .

l1. Thực thể tuyến tính

l2. Thực thể tuyến tính

Trả về .

góc. góc tính bằng radian

ví dụ

>>> from sympy import Line
>>> e = Line((0, 0), (1, 0))
>>> ne = Line((0, 0), (1, 1))
>>> sw = Line((1, 1), (0, 0))
>>> ne.angle_between(e)
pi/4
>>> sw.angle_between(e)
3*pi/4
4

Xem thêm

,

lớp sympy. hình học. đường kẻ. Dòng(*args , **kwargs)

Một dòng vô hạn trong không gian

Một đường 2D được khai báo với hai điểm phân biệt, điểm và hệ số góc hoặc một phương trình. Một đường 3D có thể được xác định bằng một điểm và tỷ lệ hướng

Thông số .

p1. Điểm

p2. Điểm

dốc. biểu thức SymPy

direction_ratio. danh sách

phương trình. phương trình của một dòng

ghi chú

\(Line\) sẽ tự động phân lớp thành \(Line2D\) hoặc \(Line3D\) based on the dimension of \(p1\). The \(slope\) chỉ phù hợp với \(Line2D\) and the \(direction_ratio\) argument is only relevant for \(Line3D\).

Thứ tự của các điểm sẽ xác định hướng của đường được sử dụng khi tính góc giữa các đường

ví dụ

>>> from sympy import Line
>>> e = Line((0, 0), (1, 0))
>>> ne = Line((0, 0), (1, 1))
>>> sw = Line((1, 1), (0, 0))
>>> ne.angle_between(e)
pi/4
>>> sw.angle_between(e)
3*pi/4
5

>>> from sympy import Line
>>> e = Line((0, 0), (1, 0))
>>> ne = Line((0, 0), (1, 1))
>>> sw = Line((1, 1), (0, 0))
>>> ne.angle_between(e)
pi/4
>>> sw.angle_between(e)
3*pi/4
6

Khởi tạo với từ khóa

>>> Line(b, a).direction.unit
Point2D(0, -1)
7

>>> from sympy import Line
>>> e = Line((0, 0), (1, 0))
>>> ne = Line((0, 0), (1, 1))
>>> sw = Line((1, 1), (0, 0))
>>> ne.angle_between(e)
pi/4
>>> sw.angle_between(e)
3*pi/4
7

Khởi tạo với một đối tượng tuyến tính khác

>>> from sympy import Line
>>> e = Line((0, 0), (1, 0))
>>> ne = Line((0, 0), (1, 1))
>>> sw = Line((1, 1), (0, 0))
>>> ne.angle_between(e)
pi/4
>>> sw.angle_between(e)
3*pi/4
8

Có thể nhập dòng tương ứng với một phương trình trong for \(ax + by + c = 0\) .

>>> from sympy import Line
>>> e = Line((0, 0), (1, 0))
>>> ne = Line((0, 0), (1, 1))
>>> sw = Line((1, 1), (0, 0))
>>> ne.angle_between(e)
pi/4
>>> sw.angle_between(e)
3*pi/4
9

Nếu \(x\) hoặc \(y\) has a different name, then they can be specified, too, as a string (to match the name) or symbol:

>>> sw.smallest_angle_between(e)
pi/4
0

Xem thêm

, ,

chứa(khác)

Trả về True nếu \(other\) nằm trên Dòng này hoặc Sai nếu không.

ví dụ

>>> sw.smallest_angle_between(e)
pi/4
1

khoảng cách(khác)

Tìm khoảng cách ngắn nhất giữa một đường thẳng và một điểm

Tăng .

NotImplementedError được nâng lên nếu `other` không phải là Điểm

ví dụ

>>> sw.smallest_angle_between(e)
pi/4
2

bằng(khác)

Trả về Đúng nếu bản thân và người khác là cùng một thực thể toán học

plot_interval(tham số=không')

Khoảng thời gian biểu đồ cho biểu đồ hình học mặc định của dòng. Cung cấp các giá trị sẽ tạo ra một đường thẳng dài +/- 5 đơn vị (trong đó một đơn vị là khoảng cách giữa hai điểm xác định đường thẳng)

Thông số .

tham số. str, tùy chọn

Giá trị mặc định là 't'

Trả về .

cốt truyện_interval. danh sách (khoảng thời gian cốt truyện)

[tham số, giới hạn dưới, giới hạn trên]

ví dụ

>>> sw.smallest_angle_between(e)
pi/4
3

lớp sympy. hình học. đường kẻ. Ray(p1 , p2=Không có , **kwargs)

Tia là một nửa đường thẳng trong không gian có điểm gốc và hướng

Thông số .

p1. Điểm

nguồn của tia

p2. Giá trị điểm hoặc radian

Điểm này xác định phương truyền tia. Nếu được cho dưới dạng một góc, nó được diễn giải theo đơn vị radian với chiều dương là ccw

ghi chú

\(Ray\) sẽ tự động phân lớp thành \(Ray2D\) hoặc \(Ray3D\) based on the dimension of \(p1\).

ví dụ

>>> sw.smallest_angle_between(e)
pi/4
4

Xem thêm

, , ,

Thuộc tính

nguồn

chứa(khác)

Là GeometryEntity khác chứa trong Ray này?

ví dụ

>>> sw.smallest_angle_between(e)
pi/4
5

khoảng cách(khác)

Tìm khoảng cách ngắn nhất giữa tia và một điểm

Tăng .

NotImplementedError được nâng lên nếu `other` không phải là Điểm

ví dụ

>>> sw.smallest_angle_between(e)
pi/4
6

bằng(khác)

Trả về Đúng nếu bản thân và người khác là cùng một thực thể toán học

plot_interval(tham số=không')

Khoảng thời gian biểu đồ cho biểu đồ hình học mặc định của Ray. Cung cấp các giá trị sẽ tạo ra một tia dài 10 đơn vị (trong đó một đơn vị là khoảng cách giữa hai điểm xác định tia)

Thông số .

tham số. str, tùy chọn

Giá trị mặc định là 't'

Trả về .

cốt truyện_interval. danh sách

[tham số, giới hạn dưới, giới hạn trên]

ví dụ

>>> sw.smallest_angle_between(e)
pi/4
7

thuộc tính nguồn

Điểm mà từ đó tia phát ra

ví dụ

>>> sw.smallest_angle_between(e)
pi/4
8

Xem thêm

lớp sympy. hình học. đường kẻ. Phân đoạn(p1 , p2 , **kwargs)

Đoạn thẳng trong không gian

Thông số .

p1. Điểm

p2. Điểm

ghi chú

Nếu các điểm 2D hoặc 3D được sử dụng để xác định \(Phân đoạn\) , thì điểm đó sẽ tự động được phân loại thành \(Segment2D\) or \(Segment3D\).

ví dụ

>>> sw.smallest_angle_between(e)
pi/4
9

Xem thêm

, , ,

Thuộc tính

chiều dài

(số hoặc biểu thức SymPy)

trung điểm

(Điểm)

chứa(khác)

GeometryEntity khác có nằm trong Phân đoạn này không?

ví dụ

>>> from sympy import Point3D, Line3D
>>> p1, p2, p3 = Point3D(0, 0, 0), Point3D(1, 1, 1), Point3D(-1, 2, 0)
>>> l1, l2 = Line3D(p1, p2), Line3D(p2, p3)
>>> l1.angle_between(l2)
acos(-sqrt(2)/3)
>>> l1.smallest_angle_between(l2)
acos(sqrt(2)/3)
0

khoảng cách(khác)

Tìm khoảng cách ngắn nhất giữa một đoạn thẳng và một điểm

Tăng .

NotImplementedError được nâng lên nếu `other` không phải là Điểm

ví dụ

>>> from sympy import Point3D, Line3D
>>> p1, p2, p3 = Point3D(0, 0, 0), Point3D(1, 1, 1), Point3D(-1, 2, 0)
>>> l1, l2 = Line3D(p1, p2), Line3D(p2, p3)
>>> l1.angle_between(l2)
acos(-sqrt(2)/3)
>>> l1.smallest_angle_between(l2)
acos(sqrt(2)/3)
1

bằng(khác)

Trả về Đúng nếu bản thân và người khác là cùng một thực thể toán học

thuộc tính chiều dài

Độ dài đoạn thẳng

ví dụ

>>> from sympy import Point3D, Line3D
>>> p1, p2, p3 = Point3D(0, 0, 0), Point3D(1, 1, 1), Point3D(-1, 2, 0)
>>> l1, l2 = Line3D(p1, p2), Line3D(p2, p3)
>>> l1.angle_between(l2)
acos(-sqrt(2)/3)
>>> l1.smallest_angle_between(l2)
acos(sqrt(2)/3)
2

Xem thêm

thuộc tính trung điểm

Trung điểm của đoạn thẳng

ví dụ

>>> from sympy import Point3D, Line3D
>>> p1, p2, p3 = Point3D(0, 0, 0), Point3D(1, 1, 1), Point3D(-1, 2, 0)
>>> l1, l2 = Line3D(p1, p2), Line3D(p2, p3)
>>> l1.angle_between(l2)
acos(-sqrt(2)/3)
>>> l1.smallest_angle_between(l2)
acos(sqrt(2)/3)
3

Xem thêm

đường phân giác vuông góc(p=Không có)

Đường trung trực của đoạn này

Nếu không có điểm nào được chỉ định hoặc điểm được chỉ định không nằm trên đường phân giác thì đường phân giác được trả về dưới dạng Đường. Mặt khác, một Đoạn được trả về nối điểm đã chỉ định và giao điểm của đường phân giác và đoạn

Thông số .

P. Điểm

Trả về .

đường phân giác. Dòng hoặc Đoạn

ví dụ

>>> from sympy import Point3D, Line3D
>>> p1, p2, p3 = Point3D(0, 0, 0), Point3D(1, 1, 1), Point3D(-1, 2, 0)
>>> l1, l2 = Line3D(p1, p2), Line3D(p2, p3)
>>> l1.angle_between(l2)
acos(-sqrt(2)/3)
>>> l1.smallest_angle_between(l2)
acos(sqrt(2)/3)
4

>>> from sympy import Point3D, Line3D
>>> p1, p2, p3 = Point3D(0, 0, 0), Point3D(1, 1, 1), Point3D(-1, 2, 0)
>>> l1, l2 = Line3D(p1, p2), Line3D(p2, p3)
>>> l1.angle_between(l2)
acos(-sqrt(2)/3)
>>> l1.smallest_angle_between(l2)
acos(sqrt(2)/3)
5

Xem thêm

plot_interval(tham số=không')

Khoảng thời gian biểu đồ cho biểu đồ hình học mặc định của Phân đoạn đưa ra các giá trị sẽ tạo ra phân đoạn đầy đủ trong một biểu đồ

Thông số .

tham số. str, tùy chọn

Giá trị mặc định là 't'

Trả về .

cốt truyện_interval. danh sách

[tham số, giới hạn dưới, giới hạn trên]

ví dụ

>>> from sympy import Point3D, Line3D
>>> p1, p2, p3 = Point3D(0, 0, 0), Point3D(1, 1, 1), Point3D(-1, 2, 0)
>>> l1, l2 = Line3D(p1, p2), Line3D(p2, p3)
>>> l1.angle_between(l2)
acos(-sqrt(2)/3)
>>> l1.smallest_angle_between(l2)
acos(sqrt(2)/3)
6

lớp sympy. hình học. đường kẻ. LinearEntity2D(p1 , p2=Không có , **kwargs)

Một lớp cơ sở cho tất cả các thực thể tuyến tính (đường, tia và đoạn) trong không gian Euclide 2 chiều

ghi chú

Đây là một lớp trừu tượng và không có nghĩa là được khởi tạo

Xem thêm

Thuộc tính

p1

p2

hệ số

dốc

điểm

thuộc tính giới hạn

Trả về một bộ (xmin, ymin, xmax, ymax) đại diện cho hình chữ nhật giới hạn cho hình hình học

đường thẳng vuông góc(p)

Tạo một Đường mới vuông góc với thực thể tuyến tính này đi qua điểm \(p\) .

Thông số .

P. Điểm

Trả về .

đường kẻ. Đường kẻ

ví dụ

>>> from sympy import Point3D, Line3D
>>> p1, p2, p3 = Point3D(0, 0, 0), Point3D(1, 1, 1), Point3D(-1, 2, 0)
>>> l1, l2 = Line3D(p1, p2), Line3D(p2, p3)
>>> l1.angle_between(l2)
acos(-sqrt(2)/3)
>>> l1.smallest_angle_between(l2)
acos(sqrt(2)/3)
7

Trong 2D, điểm đầu tiên của đường vuông góc là điểm bắt buộc phải đi qua; . Để có được một đường rõ ràng sử dụng một điểm trong đường thẳng, hãy tạo một đường thẳng từ đoạn vuông góc từ đường thẳng đến điểm

>>> from sympy import Point3D, Line3D
>>> p1, p2, p3 = Point3D(0, 0, 0), Point3D(1, 1, 1), Point3D(-1, 2, 0)
>>> l1, l2 = Line3D(p1, p2), Line3D(p2, p3)
>>> l1.angle_between(l2)
acos(-sqrt(2)/3)
>>> l1.smallest_angle_between(l2)
acos(sqrt(2)/3)
8

Xem thêm

,

thuộc tính dốc

Độ dốc của thực thể tuyến tính này hoặc vô cực nếu thẳng đứng

Trả về .

dốc. số hoặc biểu thức SymPy

ví dụ

>>> from sympy import Point3D, Line3D
>>> p1, p2, p3 = Point3D(0, 0, 0), Point3D(1, 1, 1), Point3D(-1, 2, 0)
>>> l1, l2 = Line3D(p1, p2), Line3D(p2, p3)
>>> l1.angle_between(l2)
acos(-sqrt(2)/3)
>>> l1.smallest_angle_between(l2)
acos(sqrt(2)/3)
9

>>> from sympy import Point, Line
>>> p1, p2 = Point(1, 0), Point(5, 3)
>>> l1 = Line(p1, p2)
>>> l1.arbitrary_point()
Point2D(4*t + 1, 3*t)
>>> from sympy import Point3D, Line3D
>>> p1, p2 = Point3D(1, 0, 0), Point3D(5, 3, 1)
>>> l1 = Line3D(p1, p2)
>>> l1.arbitrary_point()
Point3D(4*t + 1, 3*t, t)
0

Xem thêm

lớp sympy. hình học. đường kẻ. Line2D(p1 , pt=Không , độ dốc=Không có , **kwargs)

Một đường vô tận trong không gian 2D

Một đường thẳng được khai báo với hai điểm phân biệt hoặc một điểm và độ dốc như được xác định bằng cách sử dụng từ khóa \(slope\) .

Thông số .

p1. Điểm

điểm. Điểm

dốc. biểu thức SymPy

ví dụ

>>> from sympy import Point, Line
>>> p1, p2 = Point(1, 0), Point(5, 3)
>>> l1 = Line(p1, p2)
>>> l1.arbitrary_point()
Point2D(4*t + 1, 3*t)
>>> from sympy import Point3D, Line3D
>>> p1, p2 = Point3D(1, 0, 0), Point3D(5, 3, 1)
>>> l1 = Line3D(p1, p2)
>>> l1.arbitrary_point()
Point3D(4*t + 1, 3*t, t)
1

Khởi tạo với từ khóa

>>> Line(b, a).direction.unit
Point2D(0, -1)
7

>>> from sympy import Line
>>> e = Line((0, 0), (1, 0))
>>> ne = Line((0, 0), (1, 1))
>>> sw = Line((1, 1), (0, 0))
>>> ne.angle_between(e)
pi/4
>>> sw.angle_between(e)
3*pi/4
7

Khởi tạo với một đối tượng tuyến tính khác

>>> from sympy import Line
>>> e = Line((0, 0), (1, 0))
>>> ne = Line((0, 0), (1, 1))
>>> sw = Line((1, 1), (0, 0))
>>> ne.angle_between(e)
pi/4
>>> sw.angle_between(e)
3*pi/4
8

Xem thêm

thuộc tính hệ số

Các hệ số ( \(a\) , \(b\), \(c\)) for \(ax + by + c = 0\).

ví dụ

>>> from sympy import Point, Line
>>> p1, p2 = Point(1, 0), Point(5, 3)
>>> l1 = Line(p1, p2)
>>> l1.arbitrary_point()
Point2D(4*t + 1, 3*t)
>>> from sympy import Point3D, Line3D
>>> p1, p2 = Point3D(1, 0, 0), Point3D(5, 3, 1)
>>> l1 = Line3D(p1, p2)
>>> l1.arbitrary_point()
Point3D(4*t + 1, 3*t, t)
4

>>> from sympy import Point, Line
>>> p1, p2 = Point(1, 0), Point(5, 3)
>>> l1 = Line(p1, p2)
>>> l1.arbitrary_point()
Point2D(4*t + 1, 3*t)
>>> from sympy import Point3D, Line3D
>>> p1, p2 = Point3D(1, 0, 0), Point3D(5, 3, 1)
>>> l1 = Line3D(p1, p2)
>>> l1.arbitrary_point()
Point3D(4*t + 1, 3*t, t)
5

Xem thêm

phương trình(x='x' , y='y')

phương trình của đường thẳng. rìu + bởi + c

Thông số .

x. str, tùy chọn

Tên để sử dụng cho trục x, giá trị mặc định là 'x'

y. str, tùy chọn

Tên để sử dụng cho trục y, giá trị mặc định là 'y'

Trả về .

phương trình. biểu thức SymPy

ví dụ

>>> from sympy import Point, Line
>>> p1, p2 = Point(1, 0), Point(5, 3)
>>> l1 = Line(p1, p2)
>>> l1.arbitrary_point()
Point2D(4*t + 1, 3*t)
>>> from sympy import Point3D, Line3D
>>> p1, p2 = Point3D(1, 0, 0), Point3D(5, 3, 1)
>>> l1 = Line3D(p1, p2)
>>> l1.arbitrary_point()
Point3D(4*t + 1, 3*t, t)
6

Xem thêm

lớp sympy. hình học. đường kẻ. Ray2D(p1 , pt=Không , góc=Không có , **kwargs)

Tia là một nửa đường thẳng trong không gian có điểm gốc và hướng

Thông số .

p1. Điểm

nguồn của tia

p2. Giá trị điểm hoặc radian

Điểm này xác định phương truyền tia. Nếu được cho dưới dạng một góc, nó được diễn giải theo đơn vị radian với chiều dương là ccw

ví dụ

>>> from sympy import Point, Line
>>> p1, p2 = Point(1, 0), Point(5, 3)
>>> l1 = Line(p1, p2)
>>> l1.arbitrary_point()
Point2D(4*t + 1, 3*t)
>>> from sympy import Point3D, Line3D
>>> p1, p2 = Point3D(1, 0, 0), Point3D(5, 3, 1)
>>> l1 = Line3D(p1, p2)
>>> l1.arbitrary_point()
Point3D(4*t + 1, 3*t, t)
7

Xem thêm

,

Thuộc tính

nguồn

hướng x

hướng y

close_angle(r2)

Trả về góc quay của r2 sao cho nó quay cùng hướng với r1

Thông số .

r1. Ray2D

r2. Ray2D

Trả về .

góc. góc tính bằng radian (góc ccw là dương)

ví dụ

>>> from sympy import Point, Line
>>> p1, p2 = Point(1, 0), Point(5, 3)
>>> l1 = Line(p1, p2)
>>> l1.arbitrary_point()
Point2D(4*t + 1, 3*t)
>>> from sympy import Point3D, Line3D
>>> p1, p2 = Point3D(1, 0, 0), Point3D(5, 3, 1)
>>> l1 = Line3D(p1, p2)
>>> l1.arbitrary_point()
Point3D(4*t + 1, 3*t, t)
8

Xem thêm

thuộc tính hướng x

phương của tia x

Cực dương nếu tia chỉ theo hướng z dương, vô cực âm nếu tia chỉ theo hướng z âm hoặc 0 nếu tia nằm ngang

Khoảng cách từ một điểm đến một đường thẳng trong không gian 3d là gì?

Khoảng cách từ một điểm đến một đường - 3 chiều. Sự định nghĩa. Khoảng cách từ một điểm đến một đường thẳng — là bằng độ dài của khoảng cách vuông góc từ điểm đến đường thẳng .

Khoảng cách giữa điểm và đoạn thẳng là gì?

Khoảng cách từ (x0, y0) đến đường thẳng này được đo dọc theo một đoạn thẳng đứng có độ dài . y 0 − (− c/b). =. bởi 0 + c. /. b. theo công thức. Tương tự, đối với các đường thẳng đứng (b = 0) khoảng cách giữa cùng một điểm và đường thẳng là. ax0 + c. /. a. , như được đo dọc theo một đoạn đường nằm ngang.