중국은 본디 비트코인을 지지하는 편이었다. 미국은 달러가 기축통화기 때문에 국제 기준이고 나라가 망해도 화폐 기능을 할 수 있는 애인데, 위안화는 아니었다. 그게 싫어서 비트 코인을 지지했고 그 여파로 아시아에 비트코인 열풍이 분 것이다. 이것을 제대로 본 국제 사회가 위안화를 기축 통화로 인정해 봤다. 그래서 중국은 굳이 비트 코인을 지지해서 세금을 제대로 못 걷는 것보다. 기존 자국 통화를 지지하게 된 것이다. 중국이 문을 닫으니 한국에서 비트 코인으로 계산을 할 수 있게 해 주려는 상점과 이미 서비스를 제공한 상점도 문을 닫게 되었던 것이다. 국내 전문가란 사람들을 다 모았는데 이 부분을 간과해서 긴 글을 쓰며 내 생각도 말하게 되었다. 그리고 유시민 작가가 명확하게 보고 있는 것은 "사기" 왜냐면 나 역시 다른 국가의 암호 화폐를 만들면서 이 부분을 고려했다. 그러나 반대편도 생각은 해야 한다. 국가가 빠지고 거래소 없이 P2P 거래가 활성화 되었다고 하자. 그리고 그 P2P 거래에 지금처럼 비트 코인 가지고 말을 하는 사람이나 손석희 진행자나 세금을 매기는 사람이나 변호사 등을 다 빼고,
밥을 만드는 사람과 우유를 만드는 사람 그리고 사람의 병을 고쳐주는 의사, 글이나 말, 수학 과학을 가르쳐 주는 선생님만 모여서 살기로 한다. 그러면 다른 사람에게 세금을 낼 필요도 없고 그들끼리만 보여서 잘 살면 된다. 왜냐면 그들끼리 물물 교환을 하기 위해 선사시대처럼 조개 대신 암호화폐를 쓰면 되기 때문이다. 그래서 우리를 지켜줄 군인, 암호 화폐의 기술을 계속 발전 시켜줄 개발자 등을 더 넣고 이재용이나 이건희 같은 사람을 빼버리면 된다. 그러면 부자 2세대 3세대 라고 하는 애들과 같은 나라에 살지만 아예 좋은 사람끼리 모여 살기 "체인"에서 빼버릴 수 있다. 그래서 비트 코인은 희망이 있는 것이다. 미래의 화폐가 될 가능성이 충분하다. 매일 주식으로 놀고 먹거나 혹은 힘든... 혹은 돈 벌어서 매일 술만 마시고 여자와 노는 사람들과 따로 살 수가 있는 것이다. 그러나 문제가 생긴다. 비트코인의 초창기 화폐는 이런 좋은 의도로 시작할 수 있겠으나 문제가 생기게 된다.
우선, 비트 코인 기술 자체가 조개 교환하는 것처럼 쉬운 기술이 아니다. 이게 암호 화폐라고 좋은거라고 속이고 그냥 쓰기에는 한눈에 바로 보이는 것이 아니기 때문이다. 그래서 전제가 필요하다. 모든 구성원이 암호 화폐의 암호 기술, 그리고 전자 지갑에 대한 충분한 이해가 필요하다는 것이다. 그러나 이것이 불가능 하기 때문에 나같은 놈이 생긴다. "사기꾼" 말이다. 전자 지갑 소스를 수정할 수 있는 개발자. 나는 왠지 일 안하고 비트코인을 많이 가지고 싶다. 그래서 전자 지갑을 해킹해서 뿌린다. 비트코인 같이 이미 널리 퍼진 암호 화폐라면 어렵겠지만 내가 직접 만드는 아류작 바트코인은 아직 채굴도 되지 않은 상태고 다른 사람들에게 공통된 기능이 동작하는 전자지갑을 배포하지 않은 상태다. 트렌젝션에 대한 로그(일명 장부) 를 클라이언트 단에서 조작할 수 있고, 그것을 감출 수도 있다.
// -(IBAction)methodCalledOnClickingUIButton:(id)sender
//{
// if(sender==zoomInButton)
// {
// scaleValue++;
// }
// else if(sender==zoomOutButton)
// {
// scaleValue--;
// }
// CGAffineTransform transform = CGAffineTransformMakeScale(scaleValue,scaleValue);
// self.view.transform = transform;
//}
- (void)handleTapGesture:(UITapGestureRecognizer *)sender {
NSLog(@"handleTapGesture");
[mainPanel removeFromSuperview];
CGAffineTransform transform = CGAffineTransformMakeScale(1, 1);
mainPanel.transform = transform;
// mainPanel.layer.anchorPoint = CGPointMake(0, 0);
[_scrollview addSubview:mainPanel];
[_scrollview setContentSize:mainPanel.bounds.size];
if (sender.state == UIGestureRecognizerStateRecognized) {
}
}
-(UILabel *) uilabelSubViews:(NSString *)pString {
UILabel *tDrawText = [[UILabel alloc] initWithFrame:CGRectMake(0.5, 0.5, 20, 10)];
tDrawText.textAlignment = UITextAlignmentCenter;
[tDrawText setText:pString];
tDrawText.backgroundColor = [UIColor clearColor];
tDrawText.textColor = [UIColor whiteColor];
tDrawText.font = [UIFont boldSystemFontOfSize:8];
[tDrawText setAdjustsFontSizeToFitWidth:YES];
return tDrawText;
}
- (void)viewDidLoadExtracted {
NSString *paramPass = @"";
if(self->id_dfct_ctyp == 65535) paramPass = @"%%";
else paramPass = [NSString stringWithFormat:@"%d", self->id_dfct_ctyp];
SqlUtils *db = [[SqlUtils alloc] init];
self->listOfTheRect = [[NSMutableArray alloc] initWithCapacity:0];
[db c828ListOfStatistics:self->listOfTheRect withDongCd:@"" ctyp:paramPass];
for (statisticsCheckingCondition *s in self->listOfTheRect) {
NSLog(@"statisticsCheckingCondition %@ %@ %@ %@"
, s.dong
, s.floor
, s.hosu
, s.color);
}
self->nsm = [[NSMutableArray alloc] initWithCapacity:0];
[db c828ListOfStatisticsTotal:self->nsm withDongCd:@"" ctyp:paramPass];
self->stc8 = [self->nsm objectAtIndex:0];
NSMutableArray *personsArray = [[NSMutableArray alloc] initWithCapacity:0];
self->column = [[db hjhHoshMaxValue:[GlobalVar loadFromUserDefaults:@"current_cd_dong"]] intValue];
self->row = (int)[db selectCountOfMaxFloor:[GlobalVar loadFromUserDefaults:@"current_cd_dong"]];
if(self->column == 0) {
[GlobalVar alertMsgOKWithTitle:@"mBASS" message:@"점검현황은 전유만 조회 가능합니다."];
[self.navigationController popViewControllerAnimated:NO];
return;
}
mainPanel = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self->column * 42, self->row * 18)];
UIImageView *backgroundImage = [[UIImageView alloc] initWithFrame:CGRectMake(mainPanel.bounds.origin.x, mainPanel.bounds.origin.y, mainPanel.bounds.size.width, mainPanel.bounds.size.height)];
[backgroundImage setImage:[UIImage imageNamed:@"pc_bg.png"]];
[mainPanel addSubview:backgroundImage];
mainPanel.backgroundColor = [UIColor whiteColor];
NSLog(@"PresentCondition rows, columns = %d, %d", self->row, self->column);
CGFloat leftMargin = 50.f;
CGFloat topMargin = 50.f;
CGFloat rectangleWidth = 20.0;
CGFloat rectangleHeight = 10.0;
CGFloat gapOfColumn = 3.0;
CGFloat gapOfRow = 3.0;
NSArray *items = @[@"R", @"Y", @"G"];
for(int loop4floor=0;loop4floor<=self->column;loop4floor++) {
for(int j=0;j<=self->row;j++) {
UIView *myBox2 = [[UIView alloc] initWithFrame:CGRectMake((rectangleWidth+gapOfColumn)*loop4floor + leftMargin , (rectangleHeight+gapOfRow) * j + topMargin, rectangleWidth, rectangleHeight)];
[myBox2 setAlpha:0.85]; //talpha
//BASIC COLOR
if(loop4floor == 0) {
myBox2.backgroundColor = [UIColor blueColor];
// [UIColor colorWithRed:0.701960784313 green:1.0 blue:1.0 alpha:1.0];
NSString *tFloorStringsAre = [NSString stringWithFormat:@"%d층", (self->row - j)];
if([tFloorStringsAre isEqualToString:@"0층"]) tFloorStringsAre = @"층";
[myBox2 addSubview:[self uilabelSubViews:tFloorStringsAre]];
}
else if(j== self->row) {
myBox2.backgroundColor = [UIColor blueColor];
// [UIColor colorWithRed:0.701960784313 green:1.0 blue:1.0 alpha:1.0];
NSString *tFloorStringsAre = [NSString stringWithFormat:@"%d호", loop4floor];
if([tFloorStringsAre isEqualToString:@"0호"]) tFloorStringsAre = @"층";
[myBox2 addSubview:[self uilabelSubViews:tFloorStringsAre]];
}
else myBox2.backgroundColor = [UIColor lightGrayColor];
for (statisticsCheckingCondition *s in self->listOfTheRect) {
if((self->row - [s.floor intValue]) == j && [s.hosu intValue] == loop4floor) {
// NSLog(@"floor %d s.hosu %d", [s.floor intValue], [s.hosu intValue]);
int item = [items indexOfObject:s.color];
switch (item) {
case 0:
myBox2.backgroundColor = [UIColor colorWithRed:0.86275 green:0.27451 blue:0.27451 alpha:1.0]; //red
// myBox2.backgroundColor = [UIColor colorWithRed:0.71372549 green:0.21568627 blue:0.2 alpha:1.0]; //red
break;
case 1:
myBox2.backgroundColor = [UIColor colorWithRed:0.97255 green:0.80392 blue:0.46667 alpha:1.0];
// myBox2.backgroundColor = [UIColor colorWithRed:0.792156 green:0.5607843 blue:0.3098039 alpha:0.9];
break; //yellow
case 2:
myBox2.backgroundColor = [UIColor colorWithRed:0.4 green:0.6 blue:0.2 alpha:1.0]; //green likes
// myBox2.backgroundColor = [UIColor colorWithRed:0.49411764 green:0.6196078 blue:0.30196078 alpha:1.0]; //green likes
break;
default:
break;
}
}
}
// [self drawHosuText:myBox2.layer.position];
// [tDrawText setTag:1]
[personsArray addObject:myBox2];
}
}
UIPinchGestureRecognizer *pointerPinchZoom = [[UIPinchGestureRecognizer alloc]
initWithTarget:self
action:@selector(pinchZoom:)];
[mainPanel addGestureRecognizer:pointerPinchZoom];
for(UIView *v in personsArray) {
[mainPanel addSubview:v];
}
UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleTapGesture:)];
tapGesture.numberOfTapsRequired = 2;
[mainPanel addGestureRecognizer:tapGesture];
[mainPanel removeFromSuperview];
[_scrollview addSubview:mainPanel];
// [_scrollview setContentSize:CGSizeMake(mainPanel.bounds.size.width / 2.7, mainPanel.bounds.size.height / 2.7)];
//
CGAffineTransform transform = CGAffineTransformMakeScale(1.338158, 1.338158);
mainPanel.transform = transform;
CGRect transformedBounds = CGRectApplyAffineTransform(mainPanel.bounds, mainPanel.transform);
[_scrollview setContentSize:CGSizeMake(transformedBounds.size.width, transformedBounds.size.height)];
[self onClickStatAll:nil];
}
- (void)drawHosuText:(CGPoint)pPoint
{
UIFont* font = [UIFont fontWithName:@"Arial" size:12];
UIColor* textColor = [UIColor redColor];
NSDictionary* stringAttrs = @{ NSFontAttributeName : font, NSForegroundColorAttributeName : textColor };
NSAttributedString* attrStr = [[NSAttributedString alloc] initWithString:@"Hwfewefelwefwfelo" attributes:stringAttrs];
// UIGraphicsBeginImageContext([_scrollview contentSize]);
// CGContextRef context = UIGraphicsGetCurrentContext();
[attrStr drawAtPoint:pPoint];
// UIGraphicsEndImageContext();
}
- (NSInteger)dropdownMenu:(MKDropdownMenu *)dropdownMenu numberOfRowsInComponent:(NSInteger)component; {
return [arrDropdown count];
}
- (NSString *)dropdownMenu:(MKDropdownMenu *)dropdownMenu titleForComponent:(NSInteger)component
{
return [NSString stringWithFormat:@"공종 : %@", dropdownTitle];
}
- (NSInteger)numberOfComponentsInDropdownMenu:(MKDropdownMenu *)dropdownMenu {
return 1;
}
최근댓글