728x90 반응형 분류 전체보기352 [Python] 특정 점에서 직선에 수선의 발 구하기. 특정 pnt에서 두 점 segment_s(s), segment_e(e)로 정의된 line segment를 포함하는 line으로 수선의 발(foot of perpendicular line)를 내리는 경우는 다음과 같음. 위 그림에서 x가 바로 foot of perpendicular line임. 다음은 foot of perpendicular line (intersection)과 line-segment 중에서 pnt와 가장 가까운 점 (closet_pnt)을 반환하는 function을 구현한 예제임. def find_intersection_pnt( segment_s, segment_e, pnt): # Calculate the direction vector of the line segment defined by.. 2023. 7. 11. [Python] atan2 vector를 이용하여 직선 간의 사이각을 구할 때에는 inner prodcut를 이용한 cos과 acos을 활용하는 경우가 많다. 하지만, unit vector를 구하고 이들간의 특정 방향 (cw or ccw)등으로 각도를 구해야하는 경우 등에서는 atan2가 보다 편하다. (대부분 사이각이 요구되지만, 특정 방향으로의 각도를 구하고 이들간의 관계가 +,-가 정해져있을 때는 atan2가 낫다.) 다음의 사용시 기억할 주요 내용임. math.atan2(y, x)에는 두 개의 parameter가 있어서 direction을 나타내는 vector의 x,y component값을 넣어주면 된다. 주의할 것은 y가 먼저 위치하고 있다는 점이다. Python에서 math.atan2는 arctan에 해당하므로 각도를 .. 2023. 7. 10. [Python] lambda expression and map, filter, reduce. Python 에서 lambda function (or lambda expression)은 anonymous function(익명함수)를 만드는데 사용됨. function 형태로 code구현의 재사용을 해야하긴 하지만, def문을 이용하여 만들기에는 너무 간단한 경우 등에 사용된다. IIFE(Immediately Invoked Function Expression)로 사용되는 경우도 꽤 있다. 일반적인 function을 정의하는 def문과 같은 수준의 기능을 가지지만 복잡한 function body가 필요한 경우엔 적합하지 않음. 하나의 expression을 사용하기 때문에, exrepssion에 지나치게 복잡한 처리를 무리해서 집어넣는 형태로 구현해선 안됨. lambda는 약간만 복잡해도 알아보기 어렵기 .. 2023. 7. 7. [Vim] WSL2의 vim에서 윈도우 app로 copy and paste하기 예전에는 linux와 windows를 동시에 사용하기 보다 각각 사용하고, terminal로 접속하여 사용하던 것과 달리, WSL2를 사용하다보니 하나의 환경으로 왔다갔다의 경우가 점점 늘어났다. notepad보다는 vim을 사용하는데 (notepad는 서식제거용으로만 사용?) windows에서 따로 vim을 설치하지 않고 WSL2의 vim을 사용하면서 불편했던 부분이, vim에서 편집하던 내용을 windows에서 동작하는 어플리케이션에 copy and past가 되지 않는다는 점이었음. vim에서 shift+v 등의 visual mode로 복사할 영역을 선택하는 경우, vim 내에서는 잘 copy and past 등의 동작이 되지만, windows의 어플리케이션에는 동작이 안된다. 여러 방법 중 두가지.. 2023. 7. 7. [Python] os 모듈의 함수들 : file과 directory 관련 os 모듈의 함수들 : file과 directory 관련os는operating system (운영체제)와상호작용을 위한 다양한 기능을 제공하는built-in module임.대부분 os 종속적인 기능들이다.os.path 모듈ds_exist = os.path.exists('path')path가 실제로 존재하는 파일 또는 디렉토리인 경우, True를 반환, 아니면 Falseis_file = os.path.isfile('file_path')file_path가 파일인 경우, True를 반환, 아니면 Falsehard link인 경우에도 True를 반환.is_dir = os.path.isdir('dir_path')dir_path가 디렉토리인 경우, True를 반환, 아니면 Falseret_path = os.path.. 2023. 7. 4. [Python] binary file: write and read 0. Binary File이란Binary file은 데이터를텍스트 형식이 아닌이진 형식(0과 1의 비트로 구성된 형식)으로 저장하는 파일. Binary file (이진 파일)은텍스트 파일과 달리 사람이 읽을 수 있는 문자로 표현되지 않으며, 특정 응용 프로그램이나 소프트웨어에 의해 해석되어야 함.더보기2024.01.07 - [개발환경] - [CE] Text file: Text 파일이란? [CE] Text file: Text 파일이란?"text file" 은사람과 컴퓨터가 읽을 수 있고 처리할 수 있도록 encoding 된 characters 로 이루어진electric text lines 로 구성되는 형태의파일 포맷 및 해당 파일을 가르킴.특징.text file 이 가지는 다양한 특ds31x.tistory.. 2023. 7. 4. 이전 1 ··· 52 53 54 55 56 57 58 59 다음 728x90 반응형