본문 바로가기

전체 글1383

C# TCP에서 사용할 binary(바이너리) 프레임 포맷 예제 C# TCP에서 사용할 binary(바이너리) 프레임 포맷 예제 예를 들어, 아래와 같은 데이터를 다루게 된다면... Field Offset Type size(object) id 0 unsigned int 1 name 1 Byte Array 40 grade 41 sign float 8 아래와 같은 포맷을 만들어 볼 수 있습니다. 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647[StructLayout(LayoutKind.Sequential, CharSet = CharSet.Ansi)]struct DataPacket{ [MarshalAs(UnmanagedType.U4)] public uint Id; //.. 2017. 2. 13.
파이썬 2 3 차이 4가지 (python print, int, float, string unicode) 파이썬 2 3 차이 4가지 (python print, int, float, string unicode) 1. print가 함수 형태로 변경 2.x style 12 >>> print "welcome to", "python3k"welcome to python3k cs 3 style 12>>> print("welcome to","python3k")welcome to python3kcs 또한 인자로 다음과 같이 구분자(sep), 끝라인(end), 출력(file)을 지정할 수 있습니다. 12>>> print("welcome to","python3k", sep="~", end="!", file=sys.stderr)welcome to python3k Colored by Color Scriptercs 이와 유사하게 입.. 2017. 2. 13.
WebGL(웹지엘) 애플리케이션의 주요 구성요소 WebGL(웹지엘) 애플리케이션의 주요 구성요소 캔버스canvas3D 씬이 렌더링되는 부분이다. 캔버스는 HTML5 표준 요소이며 자바스크립트로 돔에 접근할 수 있다. 오브젝트object3D 씬을 구성하는 개체다. 이 씬은 삼각형 구조로 되어 있다. 폴리곤 데이터를 저장하기 위해 웹지엘 버퍼buffer를 사용하는데, 3D 씬 안에서 오브젝트를 렌더링하기 위한 버퍼 사용 방법을 설명한다. 광원light3D 세계에서는 광원이 필수사항이다. 씬 안에서 광원을 이용한 모델을 만들기 위해 셰이더shader를 사용한다. 그리고 3D 물체에서 빛의 반사, 흡수를 물리 법칙을 이용한다. 카메라camera3D 세계에서 캔버스는 뷰포트처럼 여겨진다. 시각 관점view perspective를 위한 다른 행렬의 이해가 필요하.. 2017. 2. 12.
Qt toUpper(), 대문자 소문자 변환 (Qt3, Qt5 대소문자 차이) Qt toUpper(), 대문자 소문자 변환 (Qt3, Qt5 대소문자 차이) 요즘은 대게 Qt 5.x를 사용합니다. 그래서 4.x 이하의 예제를 가져다가 사용하다 보면 에러가 종종 뜨지요. 이번 포스팅도 그런 경우와 연관된 내용입니다. Qt 3.0 버전 이하에선 아래와 같은 소스도 허용이 되었습니다. 12char char_tmp = message_[0].toUpper();message_[0] = char_tmp;cs 그렇지만 이제는 QString에서 char을 받아들이는 것도, char에 QString 데이터 일부를 할당하는 것 조차도 허용하지 않습니다. 위의 그림처럼 초기화할 수 없다는 에러 메시지를 볼 수 있습니다. 에러 메시지cannot convert 'QString' to 'char' in in.. 2017. 2. 12.