小编BDG*_*pps的帖子

绘制平滑曲线 - 需要的方法

在移动的过程中,如何在iOS绘图应用程序中平滑一组点?我尝试过UIBezier路径,但是当我只移动1,2,3,4 - 2,3,4,5点时,我得到的是它们相交的锯齿状末端.我听说过样条曲线和所有其他类型.我对iPhone编程很新,不懂如何在我的石英绘图应用程序中编程.一个坚实的例子将非常感激,我花了几个星期的圈子运行,我似乎永远不会找到任何iOS代码来完成这项任务.大多数帖子只链接到维基百科上的java模拟或页面关于曲线拟合,这对我没有任何作用.另外我不想切换到openGL ES.我希望有人能够最终提供代码来回答这个流传的问题.


这是我在UIBezierPath的代码,它在交叉点处留下了边缘///

更新到下面的答案

#define VALUE(_INDEX_) [NSValue valueWithCGPoint:points[_INDEX_]]
#define POINT(_INDEX_) [(NSValue *)[points objectAtIndex:_INDEX_] CGPointValue]

- (UIBezierPath*)smoothedPathWithGranularity:(NSInteger)granularity
{
    NSMutableArray *points = [(NSMutableArray*)[self pointsOrdered] mutableCopy];

    if (points.count < 4) return [self bezierPath];

    // Add control points to make the math make sense
    [points insertObject:[points objectAtIndex:0] atIndex:0];
    [points addObject:[points lastObject]];

    UIBezierPath *smoothedPath = [self bezierPath];
    [smoothedPath removeAllPoints];

    [smoothedPath moveToPoint:POINT(0)];

    for (NSUInteger index = 1; index < points.count - 2; index++)
    {
        CGPoint p0 = POINT(index - 1);
        CGPoint p1 = POINT(index); …
Run Code Online (Sandbox Code Playgroud)

iphone bezier objective-c ipad ios

55
推荐指数
5
解决办法
3万
查看次数

MKAnnotation Swift

我不确定如何用快速语言注释地图.我不知道如何创建NSObject类.以下是我尝试但无法运行的代码:

import Foundation
import MapKit
class MapPin : MKAnnotation
{
    var mycoordinate: CLLocationCoordinate2D
    var mytitle: String
    var mysubtitle: String

    func initMapPin (coordinate: CLLocationCoordinate2D!, title: String!, subtitle: String!)
    {
        mycoordinate = coordinate
        mytitle = title
        mysubtitle = subtitle
    }
}
Run Code Online (Sandbox Code Playgroud)

iphone ios swift

35
推荐指数
1
解决办法
2万
查看次数

UICollectionViewCell Shake

我已经创建了一个UICollectionView,并希望让所有单元格像iPhone上跳板的编辑模式一样摇晃.我创建了摇动代码,但不知道如何实现它.我有自定义单元格所以我认为它进入那里但不知道它是如何实现的.谢谢.

#define degreesToRadians(x) (M_PI * (x) / 180.0)
#define kAnimationRotateDeg 0.5
#define kAnimationTranslateX 1.0
#define kAnimationTranslateY 1.0

//startJiggling

int count = 1;
CGAffineTransform leftWobble = CGAffineTransformMakeRotation(degreesToRadians( kAnimationRotateDeg * (count%2 ? +1 : -1 ) ));
CGAffineTransform rightWobble = CGAffineTransformMakeRotation(degreesToRadians( kAnimationRotateDeg * (count%2 ? -1 : +1 ) ));
CGAffineTransform moveTransform = CGAffineTransformTranslate(rightWobble, -kAnimationTranslateX, -kAnimationTranslateY);
CGAffineTransform conCatTransform = CGAffineTransformConcat(rightWobble, moveTransform);

    self.transform = leftWobble;  // starting point

    [UIView animateWithDuration:0.1
                          delay:(count * 0.08)
                        options:UIViewAnimationOptionAllowUserInteraction | UIViewAnimationOptionRepeat | UIViewAnimationOptionAutoreverse
                     animations:^{ self.transform = conCatTransform; } …
Run Code Online (Sandbox Code Playgroud)

iphone ios ios6 uicollectionview

28
推荐指数
2
解决办法
6333
查看次数

UITextPosition到NSRange

我需要使用NSStringFromRange,但我只有一个开始和结束UITextPositions.你如何将UITextPosition转换为NSRange.

NSMutableArray * wordArray = [[NSMutableArray alloc]init];
id<UITextInputTokenizer> tokenizer = tv.tokenizer;
UITextPosition *start = tv.beginningOfDocument;
while (![start isEqual:tv.endOfDocument]) {
    UITextPosition *end = [tokenizer positionFromPosition:start toBoundary:UITextGranularityWord inDirection:UITextStorageDirectionForward];
    NSString *word = [tv textInRange:[tv textRangeFromPosition:start toPosition:end]];
    [wordArray addObject:NSStringFromRange(<#NSRange range#>)];
    start = end;
}
Run Code Online (Sandbox Code Playgroud)

ios

17
推荐指数
3
解决办法
8899
查看次数

UIViewControllerHierarchyInconsistency

我正在尝试构建我的应用程序,有一次我推了一个UIViewController然后我得到了这个错误.我不确定为什么.

'UIViewControllerHierarchyInconsistency',原因:'视图一次只能与一个视图控制器关联!视图>与...相关联.在将此视图与.关联之前清除此关联.

PageViewController *viewController;

viewController = [[PageViewController alloc] initWithManagedObjectContext:managedObjectContext];
dataSource = [[PagesDataSource alloc] initWithManagedObjectContext:managedObjectContext];

PVPage *selectedPage = [[dataSource pages] objectAtIndex:itemIndex];
[viewController setRepresentedPage:selectedPage];

PageFlipperAppDelegate *appDelegate = (PageFlipperAppDelegate *)[[UIApplication sharedApplication] delegate];
[(UINavigationController *)[[appDelegate window] rootViewController] setToolbarHidden:YES animated:YES];
[(UINavigationController *)[[appDelegate window] rootViewController] pushViewController:viewController animated:YES];
Run Code Online (Sandbox Code Playgroud)

在我的pageViewController ...................

- (id)initWithManagedObjectContext:(NSManagedObjectContext *)initManagedObjectContext
{
    if ((self = [super initWithNibName:@"PageView" bundle:nil]))
    {
        [self setManagedObjectContext:initManagedObjectContext];
        dataSource = [[PagesDataSource alloc] initWithManagedObjectContext:[self managedObjectContext]];
    }
    return self;
}
Run Code Online (Sandbox Code Playgroud)

ios

15
推荐指数
2
解决办法
2万
查看次数

如何从Popover中的按钮关闭UIPopover

我试图从Popover中的按钮中解除UIPopoverViewControler.另外我希望它将数据传回主视图.我有一个modalViewController但不适用于Popover.有谁知道我怎么能做到这一点?

//酥料饼

- (IBAction) save:(id)sender
{
    if ([self startDateIsValid] && [self endDateIsValid]) 
    {

        [[self parentViewController] setDatesForEvent:startDate eventEndDate:endDate allDay:[allDaySwitch isOn]];
        [self dismissModalViewControllerAnimated:YES];

    }

}
Run Code Online (Sandbox Code Playgroud)

// AddEventViewController_iPad

#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
#import "dateViewPopOverViewController_iPad.h"
@interface AddEventViewController_iPad : UIViewController <UITableViewDelegate,UITableViewDataSource, MFMailComposeViewControllerDelegate, UITextFieldDelegate,  UIAlertViewDelegate,UIPopoverControllerDelegate,UINavigationControllerDelegate,UIPopoverControllerDelegate,ABPeoplePickerNavigationControllerDelegate, ABNewPersonViewControllerDelegate,DismissPopoverDelegate> {
Run Code Online (Sandbox Code Playgroud)

// datePopover

#import <UIKit/UIKit.h>
#import "AddEventViewController_iPad.h"
@protocol DismissPopoverDelegate <NSObject>

- (void) dismissWithData:(NSString *)data;

@end

@interface dateViewPopOverViewController_iPad : UIViewController<UIPopoverControllerDelegate> {
Run Code Online (Sandbox Code Playgroud)

xcode objective-c ipad uipopovercontroller ios

10
推荐指数
2
解决办法
2万
查看次数

UICollectionViewCell阴影颜色

在新的UICollectionView中,我没有看到如何向UICollectionViewCell添加阴影.我该怎么做呢 我会添加另一个视图吗?

    [self.collectionView cellForItemAtIndexPath:[self.collectionView indexPathForItemAtPoint:[recognizer locationInView:[self view]]]].layer.shadowPath = [UIBezierPath bezierPathWithRect:rect].CGPath;
    [self.collectionView cellForItemAtIndexPath:[self.collectionView indexPathForItemAtPoint:[recognizer locationInView:[self view]]]].layer.shadowColor = [UIColor yellowColor].CGColor;
    [self.collectionView cellForItemAtIndexPath:[self.collectionView indexPathForItemAtPoint:[recognizer locationInView:[self view]]]].layer.shadowRadius = .5;
    [self.collectionView cellForItemAtIndexPath:[self.collectionView indexPathForItemAtPoint:[recognizer locationInView:[self view]]]].layer.shadowOpacity = .1;
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

ios uicollectionview

10
推荐指数
2
解决办法
2万
查看次数

使图像无法选择

我正在Dreamweaver CS5中创建一个网站.我从photoshop导出图像并将它们插入表格中.当我查看网站时,所有图像都是可选择的(您可以将它们拖到桌面上).我该怎么改变??? 我想用onclick方法做到这一点,另外我怎么做到这一点?

<td><img src="images/people_03.png" name="one" width="1000" height="156" id="one" ONCLICK="closeimages();"/></td>
Run Code Online (Sandbox Code Playgroud)

html css photoshop dreamweaver

9
推荐指数
4
解决办法
4万
查看次数

iOS绘图圈

我正在尝试在我的iOS应用中创建下面的圈子.我知道如何制作圆圈,但我不完全确定如何获得圆弧上的点数.它必须是代码而不是图像.下面是我目前的代码.

在此输入图像描述

 - (void)drawRect:(CGRect)rect
{
    CGPoint point;
    point.x = self.bounds.origin.x + self.bounds.size.width/2;
    point.y = self.bounds.origin.y + self.bounds.size.height/2;

    CGContextRef context = UIGraphicsGetCurrentContext();

    CGContextSetLineWidth(context, 2.0);

    CGContextSetStrokeColorWithColor(context, [UIColor blueColor].CGColor);

    CGRect circle = CGRectMake(point.x/2,point.y-point.x/2,point.x,point.x);

    CGContextAddEllipseInRect(context, circle);

    CGContextStrokePath(context);

    for (int i = 0; i<8; i++) {
        CGRect circleMini = CGRectMake(??????,??????,point.x/4,point.x/4);

        CGContextAddEllipseInRect(context, circleMini);
        CGContextStrokePath(context);
    }

}
Run Code Online (Sandbox Code Playgroud)

更新到答案

 float cita = 0;
for (int i = 0; i<8; i++) {

    CGPoint pointCir = CGPointMake(point.x/2 + radius * cos(cita) , (point.y-point.x/2) + radius * sin(cita) );
    CGRect circleMini = …
Run Code Online (Sandbox Code Playgroud)

geometry quartz-graphics drawrect ios

8
推荐指数
1
解决办法
9472
查看次数

以太坊创世纪封锁私人网络

我想在私人网络上挖掘.

如何在边境以太坊中为私人网络创建一个创世块?

我已经看到:https://blog.ethereum.org/2015/07/27/final-steps/但这是为了获取公共Genesis块.

encryption cryptography blockchain ethereum

8
推荐指数
2
解决办法
2483
查看次数