Skip to content

Commit

Permalink
first commit
Browse files Browse the repository at this point in the history
  • Loading branch information
fengke committed Dec 21, 2017
0 parents commit 7970ede
Show file tree
Hide file tree
Showing 30 changed files with 1,269 additions and 0 deletions.
377 changes: 377 additions & 0 deletions ARImageViewer.xcodeproj/project.pbxproj

Large diffs are not rendered by default.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<Bucket
type = "1"
version = "2.0">
</Bucket>
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>SchemeUserState</key>
<dict>
<key>ARImageViewer.xcscheme</key>
<dict>
<key>orderHint</key>
<integer>0</integer>
</dict>
</dict>
</dict>
</plist>
Binary file added ARImageViewer/122.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
21 changes: 21 additions & 0 deletions ARImageViewer/ARViewer/ARImageNode.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
//
// ARImageNode.h
// ARImageViewer
//
// Created by fk on 2017/12/20.
// Copyright © 2017年 fk. All rights reserved.
//

#import <SceneKit/SceneKit.h>

@interface ARImageNode : SCNNode

@property (nonatomic, strong) UIImage *image;


+ (ARImageNode *)isNodePartOfARObject:(SCNNode *)node;

- (instancetype)initNodeWithGeometry:(SCNGeometry *)geometry;


@end
38 changes: 38 additions & 0 deletions ARImageViewer/ARViewer/ARImageNode.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
//
// ARImageNode.m
// ARImageViewer
//
// Created by fk on 2017/12/20.
// Copyright © 2017年 fk. All rights reserved.
//

#import "ARImageNode.h"

@implementation ARImageNode

+ (ARImageNode *)isNodePartOfARObject:(SCNNode *)node {

if ([node isKindOfClass:[ARImageNode class]]) {
return (ARImageNode *)node;
}

if (node.parentNode != nil) {
return [[self class] isNodePartOfARObject:node.parentNode];
}
return nil;
}



- (instancetype)initNodeWithGeometry:(nullable SCNGeometry *)geometry {

self = (ARImageNode *)[[super class] nodeWithGeometry:geometry];

if (self) {

}
return self;
}


@end
17 changes: 17 additions & 0 deletions ARImageViewer/ARViewer/ARImagePreviewView.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
//
// ARImagePreviewView.h
// ARImageView
//
// Created by fk on 2017/12/20.
// Copyright © 2017年 fk. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface ARImagePreviewView : UIView

@property (nonatomic, strong) UIImageView *arImageView;

+ (void)showPreviewARImage:(UIImage *)image inView:(UIView *)pView;

@end
61 changes: 61 additions & 0 deletions ARImageViewer/ARViewer/ARImagePreviewView.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
//
// ARImagePreviewView.m
// ARImageView
//
// Created by fk on 2017/12/20.
// Copyright © 2017年 fk. All rights reserved.
//

#import "ARImagePreviewView.h"

@implementation ARImagePreviewView

+ (void)showPreviewARImage:(UIImage *)image inView:(UIView *)pView {

ARImagePreviewView *imagePreView = [[ARImagePreviewView alloc] initWithFrame:pView.bounds];
[imagePreView.arImageView setImage:image];
[pView addSubview:imagePreView];
}

- (instancetype)init {
return [self initWithFrame:CGRectMake(0, 0, [UIScreen mainScreen].bounds.size.width, [UIScreen mainScreen].bounds.size.height)];
}

- (instancetype)initWithFrame:(CGRect)frame {
self = [super initWithFrame:frame];
if (self) {

self.backgroundColor = [UIColor clearColor];

UIBlurEffect * blurEffect = [UIBlurEffect effectWithStyle:UIBlurEffectStyleLight];
UIVisualEffectView * effectView = [[UIVisualEffectView alloc] initWithEffect:blurEffect];
[effectView setFrame:self.bounds];
[self addSubview:effectView];

UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(20, 40, self.bounds.size.width - 20 * 2, self.bounds.size.height - 40 * 2)];
imageView.backgroundColor = [UIColor clearColor];
imageView.contentMode = UIViewContentModeScaleAspectFit;
[self addSubview:imageView];
_arImageView = imageView;

UITapGestureRecognizer *tapGestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapScreenAction:)];
tapGestureRecognizer.numberOfTapsRequired = 1;
[self addGestureRecognizer:tapGestureRecognizer];
}
return self;
}


#pragma mark - Events
- (void)tapScreenAction:(UITapGestureRecognizer *)recognizer {

[UIView animateWithDuration:0.25 animations:^{
self.alpha = 0;
} completion:^(BOOL finished) {
[self removeFromSuperview];
}];
}



@end
20 changes: 20 additions & 0 deletions ARImageViewer/ARViewer/ARImageViewerConfig.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
//
// ARImageViewerConfig.h
// ARImageViewer
//
// Created by fk on 2017/12/20.
// Copyright © 2017年 fk. All rights reserved.
//

#import <Foundation/Foundation.h>

@interface ARImageViewerConfig : NSObject

@property (nonatomic, assign) float imageWidth;
@property (nonatomic, assign) float imageHeight;

@property (nonatomic, assign) float imageDepth;

@property (nonatomic, assign) float marginAngle;

@end
27 changes: 27 additions & 0 deletions ARImageViewer/ARViewer/ARImageViewerConfig.m
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
//
// ARImageViewerConfig.m
// ARImageViewer
//
// Created by fk on 2017/12/20.
// Copyright © 2017年 fk. All rights reserved.
//

#import "ARImageViewerConfig.h"

@implementation ARImageViewerConfig

- (instancetype)init {

self = [super init];
if (self) {
_imageWidth = 0.6;
_imageHeight = 0.36;
_imageDepth = 1.2;
_marginAngle = 1.0;
}
return self;


}

@end
13 changes: 13 additions & 0 deletions ARImageViewer/ARViewer/ARImageViewerViewController.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
//
// ARImageViewerViewController.h
// ARImageViewer
//
// Created by fk on 2017/12/20.
// Copyright © 2017年 fk. All rights reserved.
//

#import <UIKit/UIKit.h>

@interface ARImageViewerViewController : UIViewController

@end
Loading

0 comments on commit 7970ede

Please sign in to comment.